• Stars
    star
    172
  • Rank 221,201 (Top 5 %)
  • Language
    Python
  • Created over 4 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

No longer working on this - currently working on https://github.com/ykdojo/kaguya/

CSQA - An open-source Q&A website for coders

Welcome to CSQA! It's an open-source Q&A website for coders of all levels.

What is this website for?

It's for asking any coding-related questions! Whether they are about any specific language, setting up your dev environment, or anything else, please feel free to use this website for it.

Why did you create this website?

I wanted to make a website where coders (mostly beginners-intermediate learners) can ask each other any coding-related questions.

Also, it's part of my new video series where I do some development and make a video about it every week.

What did you use to build this website?

I used Python (Django) for backend, Postgres for database, Bootstrap for frontend, Heroku for deployment, and Namecheap for domain registration. I'm planning to add either Vue.js or React on top of it.


How to run this web app locally

1. Install pipenv and go into the shell (make sure you have pip3 or pip first.)

If you're not familiar with this step, I recommend checking out the first few sample chapters of Django for Beginners (that's my referral link).

If you're completely new to Django, I also recommend checking out my previous video series on Django.

pip3 install pipenv
pipenv install
pipenv shell

If you have trouble instaling psycopg2, you might want to try something like this:

https://stackoverflow.com/questions/39767810/cant-install-psycopg2-package-through-pip-install-is-this-because-of-sierra

This command worked for me:

env LDFLAGS="-I/usr/local/opt/openssl/include -L/usr/local/opt/openssl/lib" pipenv install psycopg2

Note, there are two options here.

If you want to start running this server with sqlite3 right away, skip to Step 4.

Step 2 - 3 are only for setting up Postgres and they are optional.

2-A. Set up Postgres on your local environment.

You can use a commandline interface or something like Postgres.app, which I use.

Whatever you decide to use, you'll need to make sure Postgres is running on your local enviornment.

Please let me know if you need help with this step at @ykdojo on Twitter or on csqa.io.

2-B. Create a new Postgres database.

Create a new Postgres database. I call it csqa, but you can call it anything you want. Make sure you have created a user and set a password on it, too.

3. Add an environment variable for connecting to your Postgres database.

For this one, check out .bash_profile_sample as an example.

4. Migrate and run your server

Just run:

./manage.py migrate # note: make sure you have run pipenv shell before this
./manage.py runserver

5. Want to contribute?

Thank you! That would be great. Please feel free to send any pull requests here.

If you have any questions or comments, please let me know on our Discord server here: https://discordapp.com/invite/YhpHpBa

More Repositories

1

kaguya

A ChatGPT plugin that allows you to load and edit your local files in a controlled way, as well as run any Python, JavaScript, and bash script.
JavaScript
1,195
star
2

editdojo

(I'm no longer working on this - currently working on https://github.com/ykdojo/defaang)
CSS
332
star
3

OpenStream

OpenStream is an open-source project for creating a free tool that records screen and webcam footage simultaneously into separate files. It's designed for content creators and developed collaboratively through our community on Discord.
TypeScript
106
star
4

twitterbotsample

A sample Twitter bot - created by @ykdojo. This is part of the Edit Dojo project.
Python
82
star
5

open-source-hiring

A GitHub repo (and later a website) that lists job postings that are open at open source companies!
81
star
6

friendlyreminderbot

A friendly reminder twitter bot to keep you healthy and happy - not actively maintaining it anymore. Currently working on: https://github.com/ykdojo/defaang
Python
65
star
7

sensei

An AI terminal helper that helps you remember a terminal command, explains what a command does, and answers any question you have.
JavaScript
48
star
8

text_difference_finder

A text difference finder script in JavaScript - created by @ykdojo. This is part of the Edit Dojo project.
JavaScript
33
star
9

100DaysofOpenSource

#100DaysofOpenSource - join us here and on Twitter!
13
star
10

personalized_search_challenge

Attempt on a Kaggle competition, Personalized Web Search Challenge, hosted by Yandex (http://www.kaggle.com/c/yandex-personalized-web-search-challenge)
Python
12
star
11

StreamSafe

StreamSafe is a browser extension that's designed to enhance the privacy of livestreamers. It's branched out from https://github.com/ykdojo/OpenStream/blob/hide-suggested-posts-on-linkedin/
JavaScript
10
star
12

supabase-nextjs-simple-auth

Learn how to set up Supabase auth for both the frontend and backend of your application using a JWT - JSON web token.
TypeScript
6
star
13

editdojo2

This used to be Edit Dojo's private repo - now it's public.
CSS
4
star
14

my_node_skelton

JavaScript
3
star
15

StreamForce

CRM (Chatter Relationship Management) for Twitch streamers, used to keep track of who is who in the chat
JavaScript
3
star
16

WordCounterGPT

A ChatGPT plugin for precise character and word counting
Python
2
star
17

AskHNGPT

A custom GPT for asking the HN audience anything.
Python
2
star
18

To-Do-Is-To-Live-Is-To-Code

JavaScript
1
star
19

supabase-nextjs-simple-auth-starter

This example shows how to use Supabase's auth on both the frontend and backend.
JavaScript
1
star
20

nextjs-with-supabase-auth

1
star
21

t

JavaScript
1
star
22

markovbook

Visualize markov chains interactively as you type
JavaScript
1
star
23

csqa_previous_repo

An open source Q&A website for CS learners
CSS
1
star
24

gemini_test

Python
1
star
25

snowflake_hackathon

Python
1
star