figuringout

Blogging + Social Media + AI | Opensource | Javascript | ReactJS | HonoJS | Prisma

96
93
TypeScript

Stargazers
Contributors
Issues
MIT License

Figuringout.life

Welcome to Figuringout.life – an open-source full-stack application built with Next.js, where users can share their thoughts in one-liners on a variety of topics. This platform encourages engagement through likes, comments, shares, and reposts, creating a vibrant community of thinkers.

Features

  • Text-Only Posts: Users can create simple text posts to express their thoughts. (No multimedia support at this time.)
  • Engagement: Interact with posts through likes, comments, and shares to foster discussions.
  • Explore Ideas: Discover a range of topics and insights from users around the world.

Technologies

Next
Typescript
MongoDB

Getting Started

Prerequisites

  • Node.js
  • npm or yarn
  • MongoDB
  • Google OAuth

Installation

  1. Clone the repository:
git clone https://github.com/yourusername/figuringout.life.git
cd figuringout.life
  1. Create Environment variables.
cp .env.example .env
# Edit values as needed
  1. Install dependencies:
npm install
  1. Generate keys for PWA and store them in .env file
node generate-vapid-keys.js
  1. Start the development server
npm run dev
  1. Open your browser and visit https://localhost:3000.

Database Setup (MongoDB):

There are 2 options to setup MongoDB.

  1. Using Cloud DB (using Mongo Atlas)
  2. Using Docker locally. (Recommended)

Using Docker:

Ensure that Docker-Desktop app is installed on your system and is running. Docker Desktop

To create a MongoDB Docker Container, run the following:

    docker run --name mongo -p 27017:27017 -v ./data/db:/data/db -d mongo mongod

Add connection string in .env file

MONGODB_URI=mongodb://localhost:27017

Contributing

We welcome contributions! If you’d like to contribute to Figuringout.life, please follow these steps:

  1. Fork the repository.
  2. Create your feature branch (git checkout -b feature/YourFeature).
  3. Commit your changes (git commit -m ‘Add some feature’).
  4. Push to the branch (git push origin feature/YourFeature).
  5. Open a Pull Request.

Read our contribution guidelines for more details.

🤝 Contributors

License

This project is licensed under the MIT License. See the LICENSE file for details.

Visit Us

Explore and share your thoughts at https://figuringout.life!