Skip to content

stanleygomes/codex-notes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

219 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ—’οΈ Codex Notes

Build License Kotlin IntelliJ IDEA Gradle Java

Codex Notes is a powerful IntelliJ IDEA plugin for managing notes directly within your IDE. Keep your thoughts, code snippets, and documentation organized without leaving your development environment.

  • Create, edit, delete, rename, and search notes with full markdown support
  • Favorite and assign colors to notes for quick identification and access
  • Sort notes by title, creation date, or favorite status
  • Duplicate notes for easy replication
  • Import notes from external files
  • Export notes to external files
  • Open note file locations in the file system
  • Filter notes by favorites
  • Create notes from selected text in the editor
  • Integrated search via IntelliJ's Search Everywhere
  • Customizable settings for file extension, notes directory, export options, import options, and folder access

πŸ“‹ Table of Contents

πŸ“¦ Installation

From JetBrains Marketplace (Coming Soon)

  1. Open IntelliJ IDEA
  2. Go to Settings/Preferences β†’ Plugins β†’ Marketplace
  3. Search for "Codex Notes"
  4. Click Install

Manual Installation

  1. Download the latest release from GitHub Releases
  2. Open IntelliJ IDEA
  3. Go to Settings/Preferences β†’ Plugins β†’ βš™οΈ β†’ Install Plugin from Disk
  4. Select the downloaded .jar file

πŸš€ Usage

Opening the Tool Window

  • Click on the Codex Notes icon in the right sidebar
  • Or use the menu: View β†’ Tool Windows β†’ Codex Notes

⌨️ Keyboard Shortcuts

Action Shortcut
Open note Double-click or Enter
Rename note F2
Toggle favorite F
Delete note Delete
Duplicate note Ctrl+D
Export note Ctrl+E
Open location Ctrl+Shift+E

βš™οΈ Configuration

Access settings via Settings/Preferences β†’ Tools β†’ Notes Plugin

Available Settings

  • Default File Extension: Set the default extension for new notes (e.g., .md, .txt)
  • Default Sort Type: Choose the default sorting method for notes
  • Notes Directory: Specify the directory where notes are stored
  • Export Options: Configure settings for exporting notes
  • Folder Access: Set permissions for accessing note folders
  • Import Options: Configure settings for importing notes

πŸ› οΈ Development

Requirements

  • Java 17+
  • IntelliJ IDEA 2025.2.5+
  • Gradle 9.3.1+

Building from Source

# Clone the repository
git clone https://github.com/stanleygomes/codex-notes.git
cd codex-notes

# Build the plugin
make build-plugin

# The plugin will be available in build/distributions/

Running in Development Mode

# Run the plugin in a sandboxed IDE
make run

Running Tests

# Run all tests
make test

# Run tests with coverage
make test-coverage

Coverage reports are generated in build/reports/jacoco/test/html/index.html and are generated by Kover Gradle plugin.

Running Code Inspections

# Run Qodana code inspections
make inspections

πŸš€ CI/CD

This project uses GitHub Actions for continuous integration and deployment. The following workflows are configured:

Build Workflow (build.yml)

  • Trigger: Push to master branch or pull requests
  • Actions:
    • Validates Gradle Wrapper
    • Runs unit tests and plugin verification
    • Executes Qodana code inspections
    • Builds the plugin
    • Runs plugin verifier
    • Creates a draft release for manual review

Release Workflow (release.yml)

  • Trigger: GitHub release publication
  • Actions:
    • Signs and publishes the plugin to JetBrains Marketplace
    • Updates changelog

UI Tests Workflow (run-ui-tests.yml)

  • Trigger: Manual
  • Actions:
    • Runs UI tests on macOS, Windows, and Linux

Template Verify (template-verify.yml)

  • Trigger: Repository creation from template
  • Actions:
    • Verifies template setup

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ”— Links


Made with πŸ”₯ by NazarethLabs