Skip to content

codeleakteam/codeleak

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


downshift logo

❓ Better experience of asking and answering code-related questions ❓


PRs Welcome All Contributors Code of Conduct Join the community on Spectrum

The problem

Answering code-related StackOverflow questions can be frustrating and time-consuming, especially if you'd like to debug author's code. You'd need to copy that code to your code editor and install dependencies manually one by one.

The solution

We're making an experience where a person who asks for help re-creates project setup in our web app using already existing online code editors such as CodeSandbox and StackBlitz, so the person who would like to help does not have to.

Contributing

We heartily welcome any and all contributions that match our engineering standards!

That being said, this codebase isn't your typical open source project because it's not a library or package with a limited scope—it's our entire product.

Ground Rules

We expect discussions in issues and pull requests to stay positive, productive, and respectful. Remember: there are real people on the other side of that screen! Please read our Code of conduct.

Reporting a bug or discussing a feature idea

If you found a technical bug on Codeleak or have ideas for features we should implement, the issue tracker is the best place to share your ideas. Make sure to follow the issue template and you should be golden! (click here to open a new issue)

Fixing a bug or implementing a new feature

If you find a bug on Codeleak and open a PR that fixes it we'll review it as soon as possible to ensure it matches our engineering standards. Want to fix a bug or implement an agreed-upon feature? Great, jump to the local setup instructions!

Codebase

Technologies

  • NextJS: We decided to go with NextJS on front-end, which is a React framework for SSR and SEO-friendly React Apps
  • Django: Our backend is built in Django(Python)
  • PostgreSQL: Data storage
  • Mailgun: Emails
  • StackBlitz: SDK
  • CodeSandbox: Embedding

Folder structure

codeleak/                 # NextJS App
├── django-backend        # API server

Code Style

We run Prettier on-commit, which means you can write code in whatever style you want and it will be automatically formatted according to the common style when you run git commit.

First time setup

The first step to running Codeleak locally is downloading the code by cloning the repository:

git clone [email protected]:codeleakteam/codeleak.git

If you get Permission denied error using ssh refer here or use https link as a fallback.

git clone https://github.com/codeleakteam/codeleak.git

Installation

  1. Install Docker: See the Docker documentation for instructions on installing it with your OS.
  2. Install yarn: We use yarn to handle our JavaScript dependencies.
  3. Run the initial setup script(A docker network will be created and env file(env-example) will be instantiated in the django-backend/env dir): yarn run setup:dev
  4. Run the initial db migrations(You will be asked to create a new super user account): yarn run setup:db
  5. Install the NextJS dependencies: yarn

Development

  1. Run API Server: yarn run dev:api
  2. Run NextJS App: yarn run dev:next

You should be able to visit the NextJS app at localhost:3000 and login via recently created super-user account! 🎉 API server should be running running at localhost:8000, and admin dashboard is available at localhost:8000/admin.

Backers

No backers yet! 🙏 [Become a backer]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Branko Zivanovic
Branko Zivanovic

💻 🎨 📖 🤔 👀 🚇 🐛
Bojan Milicev
Bojan Milicev

💻 🤔 🐛
gengar3
gengar3

🐛
acanik84
acanik84

🐛
Darko Ignjatovic
Darko Ignjatovic

🐛

This project follows the all-contributors specification. Contributions of any kind welcome!