DreamJourney Origins

We were inspired by the image generating AI MidJourney and decided that our hack was going to be based off image generating AI, combining this with my idea to keep a Dream Journal. Many people would like to keep dream journals, but often lack the motivation to do so. Dream Journey is a website that aims to make the activity of keeping a dream journal more fun by using Stable Diffusion (an open source image generation software) to create illustrations of dreams based on their textual description.

What it does

Simply put, once a user logs in they can see their dashboard which contains their entries. To add entries, the user can interact with the website and the images will be generated and shown when entries are submitted.

How we built it

As depicted in the last image above, Dream Journey has four main components, that interact to create the final product:

  • Website: made with JavaScript and React.
  • Backend Server: made with Python and Flask.
  • Database: made with Firebase.
  • Stable Diffusion API: we didn't make the API, we simply interact with it through API requests.

When the user interacts with the website, the website makes POST requests to the backend server, either requesting data (such as the user's records), or sending data (when the user creates new records). In order to answer the POST requests, the backend server makes further calls to the database (either to query existing data or to store new data) and to the Stable Diffution API (to generate new images).

Challenges we ran into

The main challenge we ran into was getting all the parts to work together cohesively. This was challenging because it was our first time using a lot of the tools/framework. We also had(have) some issues with the API we were using to generate the images, which is very unstable (perhaps because we didn't pay to use it?).

Accomplishments that we're proud of

We are very much proud of the fact that we got a working model ready for the presentation on Sunday. Our idea and implementation are fairly simple, but it took a lot of effort to get everything working together. We definitely learned a ton and had fun making it, so it was a great experience.

What we learned

We learned a lot about both front end and back end development. (How to use a database, how to send requests back and forth, how to interact with an API).

Built With

Share this project:

Updates