1.0.0 • Published 5 months ago

revit-journal-assist v1.0.0

Weekly downloads
-
License
MIT
Repository
-
Last release
5 months ago

Revit Journal Assist

A Windows application providing a web-based user interface for viewing Autodesk Revit journal logs. This tool simplifies the process of locating, viewing, and downloading Revit journal logs across multiple user accounts and Revit versions on a Windows workstation.

Application Description

Revit Journal Assist is designed to provide remote assistance for Revit journal log analysis. It runs as a background service with a system tray icon and offers a web-based interface accessible from any web browser, making it easy to browse and examine Revit journal logs from anywhere on the network.

Functionality

System Tray Icon

  • Runs in the background and displays an icon in the Windows system tray
  • The system tray icon provides a context menu with options to:
    • Open Web UI: Launches the web interface in your default browser
    • Enable/Disable Remote Access: Toggles firewall rules to allow or block remote access
    • Exit: Closes the application

Web User Interface

  • Accessible through a web browser via http://localhost:3000 or http://workstation-name:3000
  • Displays a hierarchical file tree structure for navigating Revit journal logs:
    • Top level: User directories on the Windows system
    • Second level: Installed Revit versions (e.g., "2023", "2024")
    • Third level: Journal log files with information about each file
  • When a journal log file is selected:
    • Displays the content of the log file in a scrollable text area
    • Provides a download button to save the log file locally

Log File Access

  • Automatically searches for Revit journal logs in the default locations within each user's profile directory:
    • C:\Users\{username}\AppData\Local\Autodesk\Revit\Autodesk Revit {version}\Journals
  • Supports multiple Revit versions (2022, 2023, 2024)
  • Indicates when no journal logs are found for a specific Revit version

Remote Access

  • By default, the application is only accessible locally on the workstation where it's running
  • The "Enable Remote Access" option in the system tray menu adds a Windows Firewall rule to allow incoming connections on port 3000
  • The "Disable Remote Access" option removes this rule when you no longer need remote access
  • When enabled, the application can be accessed from other computers on the network using the workstation's hostname or IP address

User Experience

  • Provides loading indicators when retrieving log files
  • Responsive design for easy use on various screen sizes
  • Displays file metadata including size and modification date

Usage Instructions

Starting the Application

  1. Navigate to the application directory
  2. Run npm start to start the application
  3. The application will:
    • Start a web server on port 3000
    • Create a system tray icon in the taskbar
    • Automatically open the web UI in your default browser

Using the Web UI

  1. In the file tree, click on a user directory to expand it
  2. Click on a Revit version to see available journal log files
  3. Click on a journal file to view its contents in the right panel
  4. Use the "Download" button to save the currently displayed log file

Accessing from Other Workstations

To access the web UI from another computer on the same network:

  1. Ensure both computers are on the same network
  2. Right-click the system tray icon and select "Enable Remote Access" to allow incoming connections
  3. Find the hostname or IP address of the computer running Revit Journal Assist
  4. Open a web browser and navigate to http://{hostname-or-IP}:3000
  5. When remote access is no longer needed, select "Disable Remote Access" to restore security

Build Instructions

Prerequisites

  • Windows 10 or newer
  • PowerShell 5.1 or newer
  • Node.js (v14 or newer) installed using Windows installer from nodejs.org
  • Administrative privileges

Building for Distribution

  1. Open PowerShell as Administrator:

    • Press Win+X and select "Windows PowerShell (Admin)" or "Windows Terminal (Admin)"
    • Verify your execution policy allows running scripts:
      Get-ExecutionPolicy
    • If needed, set it to RemoteSigned:
      Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
  2. Clone or download the repository:

    git clone https://github.com/your-repo/RevitJournalAssist.git
    cd RevitJournalAssist
  3. Install project dependencies:

    npm install
  4. Install the pkg tool globally:

    npm install -g pkg
  5. Create the Windows executable:

    pkg --targets node16-win-x64 .

The build output will be a Windows executable (revit-journal-assist.exe) in the dist folder.

Installation Instructions

Prerequisites

  • Windows operating system
  • Node.js and npm installed (if running from source)
  • Administrative privileges (required for accessing user directories and managing firewall rules)

Installation Steps

Running from Source

  1. Download or clone the repository to your local machine
  2. Open a command prompt or PowerShell window in the project directory
  3. Install the required dependencies:

    npm install
  4. Start the application:

    npm start

Running as a Packaged Application

  1. Download the packaged executable
  2. Run the executable file (revit-journal-assist.exe)
    • The application will request administrative privileges
    • If denied, it will attempt to restart with elevation
  3. The application will start and add itself to the system tray
  4. A web browser will automatically open with the web UI

Making the Application Start Automatically

To have Revit Journal Assist start automatically when Windows boots:

  1. Create a shortcut to the executable or start script
  2. Right-click on the shortcut and select "Properties"
  3. In the "Shortcut" tab, click "Advanced" and check "Run as administrator"
  4. Press Win+R and type shell:startup
  5. Place the shortcut in the Startup folder that opens

Troubleshooting

  • If the web UI doesn't load, check if port 3000 is already in use by another application
  • If journal files aren't appearing, verify that the paths to the Revit journal directories are correct
  • Check the console output for any error messages if you're running from source
  • If you see access denied errors, make sure the application is running with administrative privileges
  • If elevation prompts repeatedly appear, ensure you're accepting the UAC prompt
  • If remote access isn't working:
    • Verify that the "Enable Remote Access" option is selected in the system tray menu
    • Check that Windows Firewall is allowing connections on port 3000
    • Ensure both computers are on the same network
    • Try accessing the application using the IP address instead of the hostname

License

MIT License

Support

For issues or feature requests, please open an issue on the project repository.