Captain's Log is your personal AI-powered voice transcription logbook. This innovative web application allows you to transcribe spoken words into text, organize your thoughts, and manage important notes. Built with cutting-edge technology and creative design, Captain's Log sets sail to revolutionize how you capture and manage ideas.
-
Node.js : Install the latest LTS version from nodejs.org .
-
MongoDB Atlas : Set up a cloud-based MongoDB database with MongoDB Atlas .
-
Google Cloud Console : Set up Google OAuth credentials for authentication.
-
OpenAI API : Obtain an API key for transcription services.
You need to pass an env. variable with the MongoDB connection string, as well as any variables required by next-auth:
NEXTAUTH_SECRET=
MONGO_URI=
NEXTAUTH_SECRET=
GOOGLE_APP_CLIENT_ID=
GOOGLE_APP_CLIENT_SECRET=
NEXTAUTH_URL=
OPENAI_API_KEY=
ALLOWED_EMAIL=
How to get these variables?
The connection string looks something like this:
mongodb+srv://<user>:<password>@cluster0.<org>.mongodb.net/<database_name>?retryWrites=true&w=majority
In your cluster, click Connect:
Under the Connect your application section, click Drivers:
Click the Copy button next to the connection string:
Replace <password> with the password for your user. Ensure any option params are URL encoded.
When deploying to production, set the NEXTAUTH_URL environment variable to the canonical URL of your site.
NEXTAUTH_URL=https://example.comIf you're running locally, set it to http://localhost:3000
- Run the following command to generate a random secret and automatically add it to your .env.local file:
npx auth secret-
Sign up for OpenAI .
-
Obtain your API key from the OpenAI dashboard.
-
Add the key to
.env.local: -
Add a few dollars to your OpenAI account. And I do mean like 5.
OPENAI_API_KEY=YOUR_OPENAI_API_KEY
Restrict access to specific email addresses:
ALLOWED_EMAIL=allowed@example.com
- Install dependencies:
npm install- Run the app in development mode:
npm run devThe app will be accessible at http://localhost:3000.
- Build the app:
npm run build- Start the production server:
npm start-
Voice Transcription : Leverage OpenAI's AI for seamless voice-to-text conversion.
-
Voice Commands : Enable users to interact with the app using voice commands.
-
Intuitive Interface : Built with shadcn/ui for a sleek user experience.
-
Secure Authentication : Powered by NextAuth and Google OAuth.
-
Persistent Storage : Store data securely with MongoDB Atlas.
-
Customizable : Easily adapt themes and functionality.
-
PWA Ready : Offline functionality using Next.js PWA .
We welcome contributions! Follow these steps to contribute:
- Fork the repository and clone it locally:
git clone https://github.com/xi-Rick/captains-log.git- Create a new branch:
git checkout -b feature/your-feature-name- Commit your changes:
git commit -m "Add feature: your-feature-description"- Push your changes:
git push origin feature/your-feature-name- Submit a pull request on the main repository.
This project is licensed under the MIT License .
Captain's Log - Your journey, your stories, the galaxy awaits.




