Yet another markdown editor. Work in progress
- Markdown editing with syntax highlighting
- File tree navigation
- Git integration for version control
- Dark and light theme support
- Math equation support (KaTeX)
- Code syntax highlighting
- Go 1.23 or later
- Node.js 20 or later
- gcc (for go-sqlite3 package)
- Navigate to the
backend
directory - Set the following environment variables:
CGO_ENABLED=1
: This is necessary for the go-sqlite3 packageNOVAMD_DB_PATH
: Path to the SQLite database file (default: "./sqlite.db")NOVAMD_WORKDIR
: Directory for storing Markdown files (default: "./data")NOVAMD_STATIC_PATH
: Path to the frontend build files (default: "../frontend/dist")NOVAMD_PORT
: Port to run the server on (default: "8080")
- Run the server:
go run cmd/server/main.go
- Navigate to the
frontend
directory - Install dependencies:
npm install
- Start the development server:
The frontend will be available at
npm start
http://localhost:3000
- Build the frontend:
cd frontend npm run build
- Build the backend:
cd backend go build -o novamd ./cmd/server
- Set the
NOVAMD_STATIC_PATH
environment variable to point to the frontend build directory - Run the
novamd
executable
A Dockerfile is provided for easy deployment. To build and run the Docker image:
- Build the image:
docker build -t novamd .
- Run the container:
docker run -p 8080:8080 -v /path/to/data:/app/data novamd