Giter Site home page Giter Site logo

101loop / drf-user Goto Github PK

View Code? Open in Web Editor NEW
154.0 8.0 70.0 455 KB

This Django User Model is customised user model keeping in mind the practical need (esp. in India)

Home Page: https://drf-user.readthedocs.io

License: GNU General Public License v3.0

Python 98.04% Makefile 1.96%
django django-rest django-rest-framework django-apps django-api django-application django-admin django2 otp otp-verification

drf-user's Introduction

Build Status codecov Downloads Downloads Code style: black pre-commit.ci status Documentation Status Documentation Coverage

Django REST Framework - User

One of the winners of PyCharm Project of the Decade Competition


User APP for Django REST Framework with API Views.

DRF User is a Django app that overrides default user app to provide additional attributes and functionalities. The current stable version includes:

  • JWT Support (Using Simple JWT)
  • Mobile Number
  • Single field for full name
  • REST API to register
  • REST API to login
  • MultiModelBackend: User can login using either of mobile, email or username
  • REST API to login with OTP (Same API endpoint as for OTP Verification; Set is_login: true while sending JSON request)
  • OTP Verification for mobile and email
  • API to register / login with OTP (no pre-registration required)
  • API to set user's profile image
  • Mail sending feature upon successful registration
  • SMS sending feature upon successful registration
  • Change Password
  • Update Profile
  • Generic Configuration based on settings.py
  • Signal based mails
  • Mail based activation (optional alternative for OTP based activation)
  • Social Auth Endpoints(Login using fb/google) (WIP)

Documentation


Example


To get the example project running do:

  • Clone this repo
    $ git clone https://github.com/101Loop/drf-user.git
  • Go to example folder in newly created directory drf-user
    $ cd drf-user/example
  • Create and activate virtual environment.
  • Install requirements
    (.venv) $ pip install -r requirements.txt
  • Run testing server:
    (.venv) $ python manage.py runserver

Take a look at http://localhost:8000/swagger. Swagger will list all the APIs of drf-user.

Contributing


  • For help and support please reach out to us on Slack.

drf-user's People

Contributors

aayush-jaiswal avatar ag93999 avatar dependabot[bot] avatar gauravp446 avatar iamaditya-gaur avatar iamdipanshusingh avatar iamhssingh avatar iamvivekkaushik avatar inovizz avatar pre-commit-ci[bot] avatar sourcery-ai[bot] avatar sumit4613 avatar thearjun avatar wackyalien avatar yummyweb 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

drf-user's Issues

Remove drf-addons dependency.

Describe the feature you'd like

We need to remove drf-addons dependency from this project as we're only using it's minor features only.

We will rewrite these 2 methods:

  • get_client_ip
  • send_message

And we'll remove usage of JsonResponse. Use DRF's Response or something.

Please write tests. ๐Ÿ™๐Ÿผ

Is your feature request related to a problem?

Your Environment

  • drf-user version(s) (drf-user --version:
  • Operating System(s):
  • Python version(s):

Additional context

Make file execution failing for windows.

Environment

  • drf-user version(s) (drf-user --version:
  • Operating System(s): Windows
  • Python version(s): 3.8

Description of the bug

Make install is working but make test and livehtml is not working.

What you expected to happen

Tests passing and html page constructed.

How to reproduce (as minimally and precisely as possible)

After cloning repo and install make using choco and run the make files getting this error

make test
${VIRTUAL_ENV-.venv}/bin/python -m pytest --disable-pytest-warnings --ds=tests.settings --cov=drf_user tests/
process_begin: CreateProcess(NULL, ${VIRTUAL_ENV-.venv}/bin/python -m pytest --disable-pytest-warnings --ds=tests.settings --cov=drf_user tests/, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [Makefile:67: test] Error 2

Anything else we need to know?

Don't save users until otp validation is successful

The users should not be stored in the database unless we know that the otp validation has been successful, I do not completely check the sources however, as I explored some sections in the serializers I feel that this problem exists in the source code

REST framework JWT Auth package is not being maintained

From Aug 2019, djangorestframework-jwt is not being maintained by it's author and has been archived.

The author of djangorestframework-jwt suggested to packages:

  1. https://github.com/Styria-Digital/django-rest-framework-jwt (fork of https://github.com/Styria-Digital/django-rest-framework-jwt)
  2. https://github.com/davesque/django-rest-framework-simplejwt (alternative, with some new changes)

@iamhssingh what should we use now, as our project heavily depends upon djangorestframework-jwt we have to update our code base accordingly.

Fix makefile in docs section

Description of the bug

While running sphinx-build to create HTML pages, it asks for a source dir now.

Just put $(SOURCEDIR) in $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html after $(ALLSPHINXOPTS). This will fix the issue. Try to run make html first to check if it's working or not.

What you expected to happen

How to reproduce (as minimally and precisely as possible)

Anything else we need to know?

Makefile port command issue

Environment

  • drf-user version(s) (drf-user --version: git fork
  • Operating System(s): Windows 10
  • Python version(s): 3.7.7

Description of the bug

Makefile not working while running make livehtml and update on the docs for windows user

What you expected to happen

removing -p as it is not working. Rather having it run directly as addition of --open-browser and --port fixes that

How to reproduce (as minimally and precisely as possible)

running the latest build

Anything else we need to know?

FYI: Sphinx is planning to move away from using Makefile as mentioned in sphinx autobuild documentation

Refactor CheckUniqueView

Describe the feature you'd like

We need to refactor CheckUniqueView.
Validation part should be written at serializer level. Move out def validated to serializer. Also, use Response from DRF to return response.

Is your feature request related to a problem?

Your Environment

  • drf-user version(s) (drf-user --version:
  • Operating System(s):
  • Python version(s):

Additional context

Migrate static settings to dynamic settings.

Describe the feature you'd like

We need to migrate static settings to dynamic settings, so that we can modify them using admin-panel

Is your feature request related to a problem?

No

Your Environment

  • drf-user version(s) (drf-user --version:
  • Operating System(s):
  • Python version(s):

Additional context

I think we'll be going to use Django-Constance to manage this.

OTP functionality not working.

Hi Himanshu,
Couple of days earlier I implemented the drf_user for my personal project. But not able to receive an OTP code for verification. I tried to look for the solution on my own but cannot find it. Have you seen such issue in the past? Please suggest a fix. Thanks in advance.

Add webhook

A realy nice feature should be the applility to add a webhook so you can connect the app trough (like Teams, Slack ...).
You can use the webhooks0.4.2 package to complete this feature request.

Pin all dependencies in requirements-dev.txt.

Environment

  • drf-user version(s) (drf-user --version: 3.12.4
  • Operating System(s): Mac
  • Python version(s): 3.9.7

Description of the bug

pin dependencies in requirements-dev.txt.

What you expected to happen

pin dependencies, run commands and see everything runs fine.

How to reproduce (as minimally and precisely as possible)

NA

Anything else we need to know?

NA

Change --p to --port in make livehtml setup step in makefile

Environment

  • drf-user version(s) (drf-user --version: 3.12.4
  • Operating System(s): Mac
  • Python version(s): 3.9.7

Description of the bug

Fixing setup step in make livehtml, one of the argument --p is deprecated so changing it with the latest one --port

What you expected to happen

Change the argument to the correct one.

How to reproduce (as minimally and precisely as possible)

Run the setup steps and execute make livehtml
image

Anything else we need to know?

NA

Update contribution guide

Describe the feature you'd like

We need to update the contribution guide to tell new contributors on how to work with forked copy of this repo.

Update README.md

Describe the feature you'd like

Update README.md to include tools that we are using for PEP8 compliance, CI and all.
Please ping me, if you want to work on it.

Add a demo project

Describe the feature you'd like

We can add a demo project to expose drf-user endpoints.
It will help new users to integrate drf-users in their projects.

OTP starting with 0

I found the error, there seems to be a weird bug when otp starts with 0, the serializer.validated_data.get('verify_otp', None) on line 308 in views.py removes the 0 from the otp which in turns fails the verification process.

Originally posted by @iamvivekkaushik in #3 (comment)

Warnings generated while building linkcheck in docs folder

Environment

drf-user developer environment

Description of the bug

When running make linkcheck in docs folder some warnings are generated.

What you expected to happen

No warnings

How to reproduce (as minimally and precisely as possible)

  • Setup dev environment
  • cd docs
  • make linkcheck

Warnings
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:24: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:24: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:24: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:24: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:24: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:49: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:49: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:96: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:96: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:96: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:96: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:96: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:119: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:119: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:119: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:119: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:119: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:151: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:151: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:151: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:151: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:178: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:178: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:178: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:178: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:207: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:207: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:207: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:231: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:231: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:252: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:259: WARNING: Title underline too short.

Refresh Token
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:259: WARNING: Title underline too short.

Refresh Token
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:274: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.

Create a logo for drf-user

Describe the feature you'd like

We need a logo for drf-user which could be related to django/rest-framework

Is your feature request related to a problem?

No.

Your Environment

  • drf-user version(s) (drf-user --version:
  • Operating System(s):
  • Python version(s):

Additional context

Running make install errors out while installing django-sendsms

Environment

  • drf-user version(s) (drf-user --version:
  • Operating System(s): WSL2
  • Python version(s): Python 3.8.5

Description of the bug

Running make install errored out with the below traceback.

Building wheels for collected packages: django-sendsms
Building wheel for django-sendsms (setup.py) ... error
ERROR: Command errored out with exit status 1:
command: /home/drf-user/101loop/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-4fh1i_2n/django-sendsms/setup.py'"'"'; file='"'"'/tmp/pip-install-4fh1i_2n/django-sendsms/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-fdb0yfh_
cwd: /tmp/pip-install-4fh1i_2n/django-sendsms/
Complete output (6 lines):
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: setup.py --help [cmd1 cmd2 ...]
or: setup.py --help-commands
or: setup.py cmd --help

error: invalid command 'bdist_wheel'

ERROR: Failed building wheel for django-sendsms
Running setup.py clean for django-sendsms
Failed to build django-sendsms
ERROR: djangorestframework-jwt 1.11.0 has requirement PyJWT<2.0.0,>=1.5.2, but you'll have pyjwt 2.1.0 which is incompatible.

What you expected to happen

All the packages to get installed.

How to reproduce (as minimally and precisely as possible)

Anything else we need to know?

Add Payment integration

Describe the feature you'd like

A payment integration is really vital for ecommerce web applications with payment integration.

Is your feature request related to a problem?

No, it is not related to any problem.

PyPI sdist failure

Traceback (most recent call last):
  File "setup.py", line 19, in <module>
    install_requires=open('requirements.txt').read().split(),
FileNotFoundError: [Errno 2] No such file or directory: 'requirements.txt'

Warnings generated while generating HTML in docs folder

Environment

drf-user developer environment

Description of the bug

When running make html in docs folder some warnings are generated.

What you expected to happen

No warnings

How to reproduce (as minimally and precisely as possible)

  • Setup dev environment
  • cd docs
  • make html

WARNINGS:

โฏ make html
sphinx-build -b html  . _build/html
Running Sphinx v4.2.0
making output directory... done
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 3 source files that are out of date
updating environment: [new config] 3 added, 0 changed, 0 removed
reading sources... [100%] installation                                                                                                                                                             al_settings.py
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:24: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:24: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:24: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:24: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:24: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:49: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:49: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:96: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:96: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:96: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:96: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:96: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:119: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:119: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:119: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:119: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:119: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:151: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:151: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:151: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:151: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:178: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:178: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:178: WARNING: Problem in http domain: field 
is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:178: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:207: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:207: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:207: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:231: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:231: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:252: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:259: WARNING: Title underline too short.

**Refresh Token**
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:259: WARNING: Title underline too short.

**Refresh Token**
/home/aayush/Projects/prs/drf-user/docs/api-doc.rst:274: WARNING: Problem in http domain: field is supposed to use role 'obj', but that role is not in the domain.

looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
writing output... [100%] installation                                                                                                                                                              
generating indices... genindex http-routingtable done
writing additional pages... search done
copying static files... done
copying extra files... done
dumping search index in English (code: en)... done
dumping object inventory... done
build succeeded, 34 warnings.

The HTML pages are in _build/html.

Build finished. The HTML pages are in _build/html

Document APIs in documentation

Currently, our documentation only has steps to install drf-user. We need to update the documentation to document all the APIs and other functionality.

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.