Coder Social home page Coder Social logo

amoler / otis-web Goto Github PK

View Code? Open in Web Editor NEW

This project forked from venhance/otis-web

0.0 1.0 0.0 4.32 MB

Django source for OTIS internal course management system

Home Page: https://web.evanchen.cc/otis.html

License: MIT License

Python 74.22% HTML 15.88% TeX 0.22% CSS 1.94% JavaScript 6.59% Shell 0.19% Jinja 0.96%

otis-web's Introduction

Top languages MIT License Last update Forks Stars OTIS-WEB status OTIS-WEB status

HTML style: djlint Python style: black types: pyright lint: pyflakes Coverage status

OTIS-WEB

These are the source files for the internal website that I use to teach my course OTIS. It is pretty standard Django, so you should be able to spin up a local server on a standard Unix environment.

Installation instructions

Video tutorial: https://youtu.be/W27XcqeXp20

Standard Linux environment

  1. Fork the repository first if you're planning on submitting a pull request later.

  2. Install the following standard tools: python (version 3.10), pip, git. (For each tool, search "[name of thing to install] [your OS]" on the web.)

  3. Clone this repository: git clone https://github.com/USERNAME/otis-web. Replace USERNAME with your username if you're forking; otherwise, replace with vEnhance.

  4. Run git submodule update --init --recursive in order to pull the evans_django_tools submodule.

  5. Install Poetry. This enables you to use the poetry command; verify this by checking poetry --help produces a help message.

  6. Once you have poetry, hit poetry install. This will automatically create a Python virtual environment and install stuff inside it.

    (If you are an expert familiar with Python virtual environments and want to use your own rather than Poetry's auto-created one, then you can do so by activating an environment before running poetry install.)

  7. If it isn't already activated, activate the Python virtual environment that was created in the previous step. The easiest way to do so is to run poetry shell.

    (Note: you have to do this step every time you start working on the project. That is, always run poetry shell before doing any work, or for experts, activate the virtual environment using your preferred method.)

  8. If everything is working, python manage.py check should run with no errors.

  9. Run python manage.py migrate to create the local database.

  10. Run python manage.py createsuperuser to create an admin user.

  11. Run python manage.py runserver. The command will spin up a continuously running server.

  12. Point your browser to http://127.0.0.1:8000. You should be able to log in with the user you defined in step 9.

  13. The website is functional now, but it is a bit bare-bones. To populate it with some test data, use http://127.0.0.1:8000/admin.

Optional steps:

  • If you need to set up environment variables, copy env to .env and uncomment the relevant lines.
  • If you want to test the Stripe stuff, a few more steps are needed. Briefly: install the Stripe CLI. Create some API keys and stripe login. Add these API keys to .env (the three STRIPE_* variables). Then run stripe listen --forward-to localhost:8000/payments/webhook/.

Feature requests or bug reports

Submit an issue on GitHub.

Pull requests

For OTIS students: pull requests welcome! If you think the website can be improved in some way, feel free to implement it. See contributing guidelines. It's OK if you don't have much code experience; I'm willing to guide you along.

526561645265616452656164

otis-web's People

Contributors

venhance avatar incompleteusern avatar dependabot[bot] avatar amoler avatar lvj-dev avatar psi25omega avatar thecooldinosuar avatar dlee888 avatar adamisntdead avatar chennisden avatar ets1331 avatar uenhance avatar radialfunc avatar vinaybadgujar102 avatar tenthmascot avatar coolbluealan avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.