Coder Social home page Coder Social logo

pyslackers / website Goto Github PK

View Code? Open in Web Editor NEW
62.0 8.0 96.0 2.28 MB

PySlackers website for invites and learning resources

Home Page: https://pyslackers.com

License: MIT License

Python 63.29% CSS 0.11% HTML 35.26% Dockerfile 0.68% Mako 0.65%
python python3 aiohttp asyncio slack

website's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

website's Issues

Choose channels on invite

  • Type
    • Feature Request
    • Bug Report
  • Operating System
    • Mac
    • Windows
    • Linux (distro: ...)
  • Browser
    • Chrome
    • Firefox

Description

When requesting an invite to join the community it would be nice to have check-boxes to choose which channels we would like to join.

If a bug report, please include what you tried, what you expected, and what happened - including a copy of any errors you saw and/or a screenshot of the problem

Slack Invite validations

  • Type
    • Feature Request
    • Bug Report

Description

Slack email invites should be sent after going through a standard rule-set:

  • Disallow blacklisted domains
    • burner emails (anything valid for a short period)
    • known compromised domains (if any)
  • Check for duplicate emails

We've discussed a little around whether we should alert the user or not, the current leaning seems to be no and let it fail silently.

Accept ESLint style and enable Javascript ESLint in Travis builds

  • Type
    • Feature Request
    • Bug Report

Description

As part of PR #77 I added a package.json and associated eslint files to the build to help developers locally ensure their code matches a particular code style. I've grabbed the default Airbnb configuration and added a few overrides for our particular requirements in the .eslintrc file that surfaced as part of discussion in the PR.

It would be good to get input from folks if the Airbnb style is to their liking and then add linting checks to the build process.

limit the number of projects shown in the main page

Right now the pyslackers repo count is low enough to not matter, but as we grow and do more - this could get overwhelming and we should only show the top N by default, and optionally allow a request for more

Blog post needs padding

The bottom of the blog post page runs right up against the edge of the screen for any moderate length posts. This needs to have some padding (and probably a footer)

extract burner domain logic out of the marketing app

Ideally speaking we won't have members with burners in slack or the website, because we want to encourage people to contribute and engage. Accounts with burners won't be able to be recovered if a password is lost, and they can often be used by people to troll or abuse more anonymously.

This move will make it so any app should be able to use the burner domain logic

PySlackers Admin Token

Swap out matt's token from testing for a community admin representative @pyslackers.admin

OOM

The dreaded OOM has arrived, time to figure out what needs to change. Currently the following is running on a 5$ DO server....

  • PSQL
  • Redis
  • Gunicorn (4xWorkers, 4xThreads)
  • Celery Scheduler/Worker

We've hit the cap...

Productionize asset serving

This isn't really necessary as of today from a performance standpoint, but it would be good to have a solid example of full productionization of a django app for the community to reference.

I think we can include a few things:

  • Django Compressor (or similar) to minify assets for prod
  • Django-Whitenoise (as long as we have nginx set up to cache for us)
  • Change the staticfiles backend to do cache busting

Build out some tests

This was a pretty quickly thrown together project, we need to get tests involved to confidently make changes.

Dependency cleanup

We should go through the dependency list and ensure all are still in use, I believe honcho is no longer utilized in the project, for example.

Website terms of service

The signup page ( #25 ) should have a terms of service, explanation of what data is collected, how data is used, requirements for a user to sign up (>13, etc).

In the end this should have a dedicated page that is linked from the Sign Up page.

Create `core` application for common components

Right now there are some management commands dumped into the marketing app, per Julio's suggestion we can make a core app that houses those shared concerns.

Acceptance:

  • Create core app
  • Move all common management commands into core application

Google Analytics

  • Type
    • Feature Request
    • Bug Report

Description

Integrate google analytics to give minor insights into page views/etc

add ansible roles necessary for deploy

This requires a new work of the pyslackers/ansible playbook. We add some new dependencies:

  • postgresql
  • redis
  • a number of config vars

Along with deploying django, which is unique relative to the old site (flask).

Make travis do more CD

Once we get the deploy working ( #6 ) we should make this project CD:

  • Build and push to docker hub
  • If "master", run playbook for auto deploy

Blog rss feed

Django has built in support for a feed, let's build one in and we can subscribe in the pyslackers newsfeed.

Github project cache not updating

  • Type
    • Feature Request
    • Bug Report

Description

The github project cache is stale and not refreshing with the nightly job

Aug 29 23:00:00 pyslackers celery[1548]: [2017-08-29 23:00:00,022: ERROR/Beat] Message Error: Couldn't apply scheduled task refresh-github-project-cache: update_github_project_cache() missing 1 required positional argument: 'org'

Opengraph, twitter and facebook meta tags for posts

  • Type
    • Feature Request
    • Bug Report

Description

To generate pretty links in these platforms we need to use meta tags for opengraph/twitter/facebook.

Secondarily, whoever implements this should look at including an image, either a default for the site or one the author associates with the post.

Missing scheduled task for github project list refresh

  • Type
    • Feature Request
    • Bug Report

Description

The github project list is static and requires manually calling the ./manage.py task - we need a migration added to set this up for any deployment.

You can see an example if adding one of these in marketing/migrations/0002_membership.py (note: rollback migrations are not required at this point).

Fix deploy to slack

The deploy to slack functionality is broken because the format changed of their token they want. This requires an admin to do it

Extract slack logic to a new app

We have a lot of slack related logic, it's probably time to extract it to its own app to de-couple it from core application logic

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.