Outline is a project I designed and built as part of my Applied Computer Science course at Dominican University of California. It's an interactive narrative planning board for writers - an online version of 3 by 5 index cards, with a few extra features.
Frontend
- React
- Redux
- RTK Query
- Dnd-Kit
- TailwindCSS
Backend
- Node.js
- Express
- MongoDB
- Mongoose
- Create, read, update, and delete cards and projects
- Drag and drop cards within your project to reorder them
- Create multiple projects and manage them from the dashboard
- View and edit your cards in a modal
- User authentication
- Sharing projects with other users
- Exporting plans to a document
- More robust search and filter options
- Set narrative structure and track progress
- I'd love to integrate this functionality into Highland 2, a writing app I use frequently.
- Drag and drop with the DragOverlay switching between the menu and grid is a little clunky.
- Need to have a 'save dashboard' function that means the card position (grid or menu) is saved to the database when the user chooses.
In the project directory, you can run:
Runs the app in the development mode.
Open http://localhost:3000 to view it in your browser.
The page will reload when you make changes.
You may also see any lint errors in the console.
Builds the app for production to the build
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
Note: this is a one-way operation. Once you eject
, you can't go back!
To get the server running, navigate to the server directory and run node server.js