Visit Dreampack, a web-based dream journal application!
Dreampack is a toolkit for hobbyist dream journalers and lucid dreamers, including several features to aid dream journaling, dream recall, reality checks, and dream sign tracking. It is intended to be easy to use and desktop/mobile friendly for users of both preferences. It is free to use, and open source with all of the code available in this repo. Dreamers who use the app will find it helps facilitate an improved relationship with their dream journeys in general, provided they use the tools available to them to their fully potential.
If you're uninformed as to what dream journaling or lucid dreaming are, that doesn't mean you can't use the app! Dreampack makes it easy to start recording and paying attention to your dreams over time. If you read some blogs or books on the subject, you'll find a lot of the techniques that are taught in them are covered as built-in features Dreampack.
Check out the live site at: https://dreampack.app/
- Log in and you will see the new entry form, or else click the "+New Entry" button to navigate to the form.
- Enter text in the Title and Body fields.
- Click the save entry button.
- Select the text you wish to turn into a dream sign. Click the popover button that says "Dream Sign" to turn the selected text into a dream sign.
- The text will now be highlighted pink. Any future text that matches the phrase will also be highlighted for you.
Note: You will have to save your OpenAI API key to your account via Dreampack's Settings page in order to use Dream Interpretation, Audio Transcription and Image Generation features. Read this link to OpenAI's help pages to find out Where do I find my Secret API Key?
- Navigate to your desired entry and click the "Go to Interpretation" link in order to navigate to the Interpretation page
- Click the "Interpet with AI" button
- Wait for the interpretation to generate
- Prepare your microphone. This can be a phone mic if you're on mobile or a regular computer mic on desktop.
- Navigate to the New Entry page and click the "Start Recording" button. Optional: Add a title, which will be generated automatically if left empty.
- Speak your entry into the microphone.
- Click the "Stop Recording" button when you're finished.
- Wait for the transcription to complete, when it's finished your audio will be transcribed into text and the entry automatically saved.
- Navigate to your desired entry.
- Click the "Generate Image" button and wait for it to generate.
- A new button will appear which is a smaller version of the generated image, click it in order to see the full size, and click away to make it disappear.
- Works on Mobile!
- Ruby on Rails
- React.js
- Tailwind
- Postgresql
- OpenAI API: ChatGPT, Whisper, DALLE-2
- RSpec
- Cypress
Currently, the only way to interact with Dreampack is locally. It will be deployed soon!
- Check if you have Ruby 3.1.2 by entering
ruby -v
into the terminal. I recommend rbenv for managing versions - Enter
rails -v
in the terminal to ensure you have Rails 7.0.5 installed psql --version
to ensure you have PostgreSQL 14.9 installed (make sure you have a user and password)- If you need more information on setting up PostgreSQL with rails, see this great resource
- Fork the repository and copy SSH key
- Enter
git clone <'SSH Key'> in the terminal and enter
bundle install
andyarn install
to install dependenciesbundle exec figaro install
to install Figaro, which you'll need to handle your OpenAI API key- You'll need to sign up for an OpenAI account if you want to use the AI Features
- In your OpenAI account dashboard, click the profile icon in the top right, click
View API Keys
and then clickCreate new secret key
, copy it for the next step - Open the
application.yml
file and enterOPENAI_ACCESS_TOKEN: <'Your OpenAI API Key'>
without the <''>, just the key you copied earlier rails db:setup
to create the database and load the schemabin/rails db:migrate
to run migrationsbin/dev
to run the local server- localhost:3000 in your web browser to access the application