Git Product home page Git Product logo

rubikvndotorg's Introduction

rubikvn

rubikvndotorg's People

Contributors

trungams avatar trunglamnguyen avatar xpoko avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

rubikvndotorg's Issues

Create static information pages

Create backend & frontend views for /information pages, including About us, Contact information sections and a feedback form for the website interface. We can put the form in About us page or separate them. It's fine either way

User model implementation

Following the discussion in issue #10. We will now try to extend our user model to support password authentication.

Feature/Enhancement Description

OAuth is being used for login so that new users don't have to register for a new account providing that they have a WCA account and ID. This puts a limit on who can sign in to our website, and some people might not need a WCA account in order to create meetup events.

Tasklists Suggestion

  • Extend our current User (Cuber) model to have a password field.
  • Implement registering.
  • Implement login with password.
  • Allow registered user to connect with their WCA account to sign up for events and competitions.
  • Email verification. THIS IS IMPORTANT

Additional Comments

Change settings for deployment

This is only required for master branch. Run python manage.py check --deploy for more details.

In general, there are settings for Debug mode, logging, database access, Https and proxy, cookies settings that need to be taken care of

Use pipenv to replace using pip and virtualenv separately

Feature/Enhancement Description

This is obv a better packaging management tool

Tasklists Suggestion

  • Try setting up pipenv on local
  • If it works, remove requirements.txt and rbvn folder for virtualenv since pipenv will use a different folder to manage virtual environment
  • Update README with our changes to setting up the repo

Additional Comments

Design user flow for events

Feature/Enhancement Description

This is a continuation of #10. As we have kind of agreed on the model used, we can now proceed to design and program the user flow for event scheduling.

Tasklists Suggestion

  • Design user flow
  • Create views for each page

Additional Comments

Pagination for ranking page

Feature/Enhancement Description

There was pagination when we were rendering all results into a template. The json endpoint currently doesn't support that.

Tasklists Suggestion

[edit] I just thought about it and we only need to handle on front-end
[edit2] I'm dumb. This needs back-end also

  • Write helper functions for pagination because Django's paginator does not serialize well
  • Paginate on server side
  • Use Ajax to get results at certain page and render data
  • Add navigate buttons

Additional Comments

Create Project Wiki

Feature/Enhancement Description

In order to keep our README concise and other docs organized, it's better to put some contents to this repo wiki pages.

Tasklists Suggestion

  • Git installation (Linux/Windows/MacOS)
  • Cloning and deploying locally with Docker
  • Importing WCA database
  • Workflow + some useful resources for learning

Additional Comments

Create default error views

We might want custom html pages for 404, 500, 403, 400 errors instead of the default ones provided by Nginx

Improve installation script

Feature/Enhancement Description

The current installation script is written in bash, which would be nice if I didn't suck at it ๐Ÿ˜ข
From my observation, it's prone to runtime errors, and more often new developers had better follow the installation steps manually.

Edit: let's give bash one more try ๐Ÿ˜›

Tasklists Suggestion

  • Use python for easier arguments parsing
  • Look into executing privileged commands for apt install or w/e in python
  • Rewrite install.sh
  • Install dependencies
  • Populate config file
  • Set up MySQL account
  • Process WCA database export
  • Perform migrations

Additional Comments

Comment on this issue if there's any progress made

Event scheduling utility

Feature/Enhancement Description

One of my initial intentions when this website was started is to provide a common platform for local speedcubers to create, announce and manage meetups or small unofficial competitions, and ultimately WCA competitions. It would be amazing if we can integrate OAuth from WCA for user verification, too.

Tasklists Suggestion

  • Design a user model. Only logged in users can create and manage events
  • Integrate WCA's OAuth system for logging in/out
  • Design an event model. We also need to categorize our events (e.g: cubers meetup, unofficial competition, WCA competition, etc)
  • Back-end views
  • Provide a front-end for it

Additional Comments

Write contents for information pages

We need some info about rubikvn (the outdated forum, ongoing projects for our new website, and the speedcubing community)

For the feedback form, we need some relevant questions to ask our users about their browsing experience, feature request/suggestion, bug reports.

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.