Giter Site home page Giter Site logo

vitorfs / bootcamp Goto Github PK

View Code? Open in Web Editor NEW
2.3K 2.3K 993.0 9.68 MB

An enterprise social network

Home Page: trybootcamp.vitorfs.com

License: MIT License

Python 31.01% CSS 47.81% JavaScript 5.51% HTML 13.90% Shell 1.38% Dockerfile 0.40%
django python social-network

bootcamp's People

Contributors

agricultures avatar arpit1997 avatar chetanya-shrimali avatar dmitri-sintsov avatar dylanguedes avatar fabianogoes avatar igr-santos avatar katherinemichel avatar leonh avatar lomatus avatar mkljczk avatar mwanjajoel avatar nazartkachuk avatar oma0256 avatar paulovictor avatar ralphite avatar sebastian-code avatar shabinesh avatar surajkamble avatar thalmann avatar vitorfs avatar wujishanxia avatar yashladha avatar

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  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  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  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

bootcamp's Issues

Change the asynchronous implementation

Right now the platform uses a loop to monitor changes on activities and notifications, on Django 1.9 you have django channels, created to implement in a better way asynchronous communications.

Reputation system

Refactor User Profile, add an integer field to store the user's reputation

Accepted answer: +10 reputation
Liked article: +5 reputation
Favorited question: +3 reputation
Liked feed: +1 reputation
Answer up vote: +1 reputation

Display reputation on users profile page and on feed/question pages
@Gissues:{"order":50,"status":"inprogress"}

Login por redes sociais

Usando o python-social-auth é bem fácil permitir que os usuários associem suas contas do github, facebook ou google accounts p/ logar no site.

Isso poderia facilitar a dinâmica de compartilhamento informações dentro do site além de aumentar a visibilidade p/ novos usuários fora do site.

sósugestão

@Gissues:{"order":99.21875,"status":"notstarted"}

Develop a Simple WIKI

It would be interesting develop a module that implements a simple wiki.
A quick way to collaborate in realtime.
@Gissues:{"order":56.25,"status":"notstarted"}

Incorporate Docker on the development flow

Is a good practice to develop on the same database engine than you wish to deploy on production, for that and to avoid unnecessary software on your own PC, container technology like the ones of Docker would help a lot on the development process, and on the validation of the choiced technologies.

gravatar

Why not using gravatar for default avatar?
I'll take a look at the code and submit a PR if wanted

webservice endpoint?

Hi

I am new to Bootcamp and I am thinking to use it in my mobile project. Wondering if bootcamp already have webservice endpoint to communicate with mobile directly? If not i am happy to develop one and contribute.

Thanks

Migrate to a more 12-Factor style on the code

The Twelve-Factor App methodology is a good declaration about how good code should be made, implementing good practices on software development, continuous integration, DevOps, security and others.

Length of comments

i think the length of the comment, should have a limit, because it is distorting the page

Implementar uma ferramenta de pesquisa

Com o crescente aumento das publicações pode se tornar trabalhoso encontrar algum artigo em específico. Seria interessante também implementar a pesquisa para outras áreas do sistema, como usuários e perguntas.

Unable to syncdb

Cloned the repo and when I run
python manage.py syncdb

I am getting this error
decouple.UndefinedValueError: SECRET_KEY option not found and default value was not defined.

Implementing CBV

This would require a huge amount of work to refactor the code at this level, given the fact than all the views works already smoothly. But this should reduce the amount of actual code and would implement more actual and desirable practices on the project development.

database issue

I am very new to the django framework so don't have much idea about it. Can you guide me how to install this project. On executing manage.py migrate i am getting this error : FATAL: password authentication failed for user "u_bootcamp".

Search

Even basic search functionality would be a big enhancement.

tags: strip or replace unsupported delimiters

If I create tags like a, b, c, I'll mess up a and b because they'll have the comma attached to them.

If somebody uses an unsupported delimiter, it could be automatically replaced by the space character.
In that case and , and ; could all be accepted and that could be indicated in the hint above the tags form field.

i18n !

  • criar tradução do projeto.
  • possibilitar a escolha da linguagem.

Posso fazer isso o que acha ?

Password reset and username reminder

I signed up for the demo instance of trybootcamp early on. I can no longer log in due to forgotten username and/or password. I can no longer register with my email address due to the existing user record.

A basic facility to reset password and/or remind of username to configured email address would be helpful.
@Gissues:{"order":75,"status":"notstarted"}

Add functionality to Upvote & Downvote Questions

Right now we do have functionality to up-vote or down-vote Answers in Q&A section. Do you think it would be a good idea to allow users to vote on Questions as well?

I can take a lead on this feature request if we agree that its worthy to implement this feature.

Getting decouple error while starting up site

When I try to run the site I get a
decouple.UndefinedValueError: ALLOWED_HOSTS option not found and default value was not defined.

I can't seem to figure out where I'm going wrong. Any thoughts?

full error:

Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 367, in execute_from_command_line
    utility.execute()
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 316, in execute
    settings.INSTALLED_APPS
  File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 53, in __getattr__
    self._setup(name)
  File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 41, in _setup
    self._wrapped = Settings(settings_module)
  File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 97, in __init__
    mod = importlib.import_module(self.SETTINGS_MODULE)
  File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/home/appu/bootcamp/bootcamp/settings.py", line 22, in <module>
    ALLOWED_HOSTS = config('ALLOWED_HOSTS', cast=Csv())
  File "/usr/local/lib/python2.7/dist-packages/decouple.py", line 197, in __call__
    return self.config(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/decouple.py", line 77, in __call__
    return self.get(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/decouple.py", line 64, in get
    raise UndefinedValueError('%s option not found and default value was not defined.' % option)
decouple.UndefinedValueError: ALLOWED_HOSTS option not found and default value was not defined.

Further improvement

Following the suggestions by @vitorfs and questions by @dwayne on #57 I wanted to set a list of potential improvements:

  • Migrate to Python 3.
  • Keep backwards compatibility with Python 2.
  • Add coverage (suggested on my most recent PR #65 as suggested in #48).
  • Add coveralls badge.
  • Add requirements monitoring (requires.io is the one I have in mind).
  • Add requires.io badge (that's because that's the service I know of)
  • Run isort on the project (well, this can be done by hand to, and I have cleaned a little bit already).
  • Run Flake8 on the project.
  • Polish the code structure applying a more 12-Factor style (as suggested in #55).
  • Add docker to the development flow (as suggested in #51).
  • Implement CBV (I actually have doubts about this one suggested in #50 but I guess than at least it should be discussed).
  • Implement better user management and it's workflow functionalities (password recovery, social networks integrations, account creation, login management, correct redirect) as suggested in #86, #53, #32, #28 and #2.
  • Add tests to the apps to validate functionality and that way incrementing test coverage, as suggested in #63 and complemented with the requirements from #48 and #65 which were already solved.
  • Add better tagging management. As suggested in #54, #73 and #74.
  • Implement a nice release cycle on the project (I have to work on this because I'm not that really aware of how it works)
  • Add Tox to the project.

On the next list I would define some additional requests, perhaps too old and somehow relegated to the nice to have drawer:

  • Improve keyboard shortcut to submit comments, perhaps accepting CMD + Enter on OS X, just like GitHub (As suggested in #29).
  • Add User reputation system and its respective management process so it can be overrided (as defined on #19).
  • Implement better internationalization (a really wild idea, but who knows).
  • Display the list of users who liked a given feed, on hover (As requested on #21).
  • Federate multiple instances of bootcamp (As suggested in #31).

Do you both have additional suggestions, requests or goals? As an example, badges are really nice, but there is no need to have all of them, do you have some ideas about which badges the project should have?

PD 4-12-16: Updating the list to include requirements monitoring and the proper badge.
PD 18-12-16: Updating the list to include the reputation system.
PD 13-05-17: Updating the list to include the requirement to add testing to apps.
PD 3-7-17: Updating the issue to add a list of nice to have and forgotten requests.

Allow markdown in comments/answers

Some answers may benefit (readability, etc.) from the ability to use enhanced formatting.

At the moment it doesn't seem possible to use markdown in answers and even \n is stripped from them, which makes it hard to write complex answers that are easy to read. For example a script or code section in the answer would be very hard to read.

Incorporate Vagrant on the development flow

Is a good practice to develop on the same database engine than you wish to deploy on production, for that and to avoid unnecessary software on your own PC, virtualized machines like the ones from Vagrant would help a lot on the development process, and on the validation of the choiced technologies.

Implement a better user management

The package django-allauth is one of the best for user management out there, which would help a lot the development of the this platform.

Implement a better taggin management

The package django-taggit is considered as the default go-to solution to manage the tagging functionality on projects, avoiding the hassle and technical difficulties involved in maintaining your own code of this type, and also improving the implementation.

Consider to implement coverage

Out there are lots of web services aimed to help on a development process under a Continuous Integration methodology; the project already has Travis-CI, but it can implement Coverage and Coveralls to keep track on the test coverage of the code.

markdown

Why not using markdown on the site?

about .env config file ?

DEBUG=True
SECRET_KEY='mys3cr3tk3y'
DATABASE_URL='postgres://u_bootcamp:p4ssw0rd@localhost:5432/bootcamp'

localhost database 👍
postgres://u_bootcamp:p4ssw0rd@localhost:5432/bootcamp'
u_bootcamp:p4ssw0rd mean database:passwd

Correctly redirect user after login

When you go to a specific URL and have to login first, it takes you to the index.

It should take you to the URL you were trying to access.
@Gissues:{"order":53.125,"status":"notstarted"}

tags not searchable

I just tried the demo and couldn't find my question by the tag.

Maybe that's by design (I noticed there's a tag cloud on the right hand side), but that still makes it hard to find a question or article that uses a popular tag and has some fairly unique word in the body.

For example if I want to find a python-tagged question that mentions JavaScript, I'd like to be able to find it by searching for python javascript rather than having to browse through all python-tagged Q&A, or search for JavaScript and find many results unrelated to Python.
Maybe "search within results" would be useful (so that one can click on a tag and then search all Q&A or articles that contain the tag.)

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.