The project that powers MDN.

Overview

Kuma

Docker testing Python Lints JavaScript Lints Documentation Build Code Coverage Status License What's deployed on stage,prod?

Kuma is the platform that powers MDN (developer.mozilla.org)

Development

Code:

https://github.com/mdn/kuma

Issues:

P1 Bugs (to be fixed ASAP)

P2 Bugs (to be fixed in 180 days)

Dev Docs:

https://kuma.readthedocs.io/en/latest/installation.html

Forum:

https://discourse.mozilla.org/c/mdn

Matrix:

#mdn room

Servers:

What's Deployed on MDN?

https://developer.allizom.org/ (stage)

https://developer.mozilla.org/ (prod)

Getting started

Want to help make MDN great? Our contribution guide lists some good first projects and offers direction on submitting code.

Comments
  • Django upgrade

    Django upgrade

    This is the tracking PR for upgrading kuma to Django 1.7. This PR contains our project meeting notes & tasks.

    The process:

    1. git fetch mozilla
    2. get checkout mozilla/django-upgrade-1116335
    3. git submodule sync && git submodule update --init
    4. find . -name "*.pyc" | xargs rm -f
    5. (vagrant-only) vagrant provision
    6. Either:
    1. Analyze common errors
    2. Pick an error to fix
    3. Add yourself to a "Tasks for code" item below

    Tasks for code:

    • [x] @groovecoder verify updated django-statici18n usage
    • [x] @groovecoder - throw new enhanced intern tests at the branch
    • [x] @jezdez - convert puppet provisioning to ansible
      • [x] debug rabbitmq install
    • [x] @jezdez - Update kuma setup docs
      • [x] Remove host machine install docs
      • [x] Convert vagrant/vm docs from puppet to ansible (e.g., install ansible on host machine)
      • [x] mark submodules as deprecated
      • [x] pip install compiled.txt
    • [x] @openjck and/or @darkwing and/or others - spot-check ansible vm build

    Tasks for deploy: Anytime:

    • [x] with Sheeri - Add utf8_distinct_ci collation to MySQL (bug 1161107)

    May 26

    • [x] With Jake and cyliang: Create new python 2.7 virtualenv (bug 1148435)
    • [x] With Jake and cyliang: Install dependencies from this branch's compiled.txt requirements file into the new virtualenv

    June 2

    • [x] Ping VM team re: snapshot & potential restore
    • [x] Ping MDN teams re: stage server freeze
    • [x] Deploy branch to stage (logs)
      • http://developeradm.private.scl3.mozilla.com/chief/developer.stage/logs/3c95d5eabe720b5ca9e25ececfba7da9786325e3.1433259513
        • error: err: fatal: destination path 'vendor/src/elasticsearch-dsl-py' already exists and is not an empty directory. (cause)
        • fix: rm -rf vendor/src/elasticsearch-dsl-py
      • http://developeradm.private.scl3.mozilla.com/chief/developer.stage/logs/3c95d5eabe720b5ca9e25ececfba7da9786325e3.1433259741
        • error: ImportError: cannot import name widgets
        • fix: find . -name "*.pyc" | xargs rm -f
      • http://developeradm.private.scl3.mozilla.com/chief/developer.stage/logs/3c95d5eabe720b5ca9e25ececfba7da9786325e3.1433262124
        • error: ImportError: No module named Image
        • fix: add VENV_DIR to the commander_settings.py and https://github.com/mozilla/kuma/commit/2d8b7d7fac66d413e26397960a43793ce8a1a94f
      • http://developeradm.private.scl3.mozilla.com/chief/developer.stage/logs/2d8b7d7fac66d413e26397960a43793ce8a1a94f.1433271998
        • error: ImportError: No module named git
        • fix: https://github.com/mozilla/kuma/commit/0836005e29b798bea544be625c88c903a0b40919
      • http://developeradm.private.scl3.mozilla.com/chief/developer.stage/logs/0836005e29b798bea544be625c88c903a0b40919.1433276127
        • error: django.db.utils.OperationalError: (1060, "Duplicate column name 'user_id'")
        • fix: Continue with fake migrations below ...
    • [x] With Jake and cyliang: Convert web heads Apache to use python 2.7 path
      • error: https://cliang.pastebin.mozilla.org/8835477
        • fix: Hrm. Didn't make it from the admin host to the webhead. Will try to force the files out ... W00t. that did it.
      • error: all-servers.conf file moved. (Was in kuma/etc/apache/all-servers.conf; now in kuma/provisioning/roles/kuma/files/apache2/all-servers.conf)
        • fix: Altering include line
      • error: https://cliang.pastebin.mozilla.org/8835480
        • fix: Remove https://github.com/mozilla/kuma/blame/master/wsgi/kuma.wsgi#L36-L41 (https://github.com/mozilla/kuma/commit/0276e9ff5b338e845943d8d7cc952676e7afb822)
    • [x] With Jake and cyliang: Manually do fake migrations during the first deployment
    • [x] Deploy branch to stage again
      • http://developeradm.private.scl3.mozilla.com/chief/developer.stage/logs/0276e9ff5b338e845943d8d7cc952676e7afb822.1433282257
        • error: Unknown command: 'update_badges'
        • fix: https://github.com/mozilla/kuma/commit/8068ff61f1698383dd8adf36b1d99cf03918dbbd
    • [x] Update cron jobs to use new python2.7 venv

    June 2-4

    • [x] Stage Test, test, test with writers, WebQA, devs, et al.
    • [x] Fix Travis builds on branch

    June 9

    • [x] Merge branch into master

    June 9

    • [x] Repeat deployment steps on Prod (logs)
      • http://developeradm.private.scl3.mozilla.com/chief/developer.prod/logs/ca49d1fc849d92445c1abf98415a32efdc3aa3d2.1433879425
        • error: SyntaxError: invalid syntax
        • fix: push again because only now the new chief deploy file was on the admin node
      • http://developeradm.private.scl3.mozilla.com/chief/developer.prod/logs/ca49d1fc849d92445c1abf98415a32efdc3aa3d2.1433879541
        • error: django.db.utils.OperationalError: (1060, "Duplicate column name 'user_id'")
        • fix: run fake and real migrations
      • With @cyliang run migrations
        • migrate --fake wiki 0001 -> DONE
        • migrate wiki 0002 -> DONE
        • migrate --fake -> DONE
      • http://developeradm.private.scl3.mozilla.com/chief/developer.prod/logs/a1d3727bf7f8eb147e4a71d4f5294470d402121f.1433880741
        • error: Syntax error in WSGI script while starting httpd caused by 06b3163de6177cc5b3aeef0dfa1b3dfe00bf8951
        • fix: a1d3727bf7f8eb147e4a71d4f5294470d402121f
      • Increased errors on search page with search filter tags
        • error: https://rpm.newrelic.com/accounts/263620/applications/3172075/traced_errors/3066f1-ceb7f59a-0ee5-11e5-a48a-f8bc124250a8?original_error_id=3066f1-efed656b-0ee5-11e5-a48a-f8bc124250a8
        • fix: 73cdf4f98a73e06d4ef9f0f5e6aaac3c2f1c4f42

    Tasks for post-deploy:

    • [ ] @jezdez - Clean out db tables for removed apps and/or libraries, including stale content type records
      • [ ] @jezdez - Audit tables and list tables for deletion; ping Sheeri and delete
    • [x] @groovecoder - notify dev-events team that MDN events page is gone
    • [x] @groovecoder - notify mdn lists that features are gone: demo comments
    • [x] @jezdez - send email to dev-mdn re: big dev environment changes (e.g., new vendor scheme and pip requirements usage)
    • [ ] @groovecoder - schedule mdn-dev (+ Cloud Ops?) post-mortem on the update project, including:
      • Policy for on-going updates to MDN python dependencies to prevent another huge gap
        • requires.io
      • Discuss pip-ifying dependencies, peep-like checks, installing from tarballs, adding pip install compiled to chief script
      • Resuming django-pipeline (and removing GitPython in the process)
      • Discuss a new tagging system
      • Discuss html5lib usage
      • Discuss PostgreSQL
      • Discuss regular db audit and maintenance
    • [x] @groovecoder - file sec bug to update django-rest-framework
    • [x] @jezdez - re-base https://github.com/mozilla/kuma/pull/3062
      • [ ] @jezdez, @groovecoder, & c - decide what new config/env method we want
      • [ ] @jezdez, @groovecoder, & c - coordinate & implement new config/env method
      • [ ] @jezdez - email dev-mdn new config design
    opened by ubernostrum 126
  • Drop in GA traffic

    Drop in GA traffic

    Summary We are seeing a drop in GA after the react front-end launch which is inconsistent with other data sources (search console in this case)

    Steps To Reproduce (STR)

    1. Go to GA
    2. compare traffic before and after the launch

    How can we ensure that we are still collecting as much telemetry as before?

    p1 
    opened by atopal 37
  • Switch to allauth for Persona, prepare Github integration

    Switch to allauth for Persona, prepare Github integration

    This is the next step to enabling Github login. It throws away all of the django-browserid and custom code and replaces it with allauth's support for Persona.

    Here are the current TODOs for this:

    • [x] Fix tests
    • [x] Double and triple check migrations for email adresses and social accounts
    • [x] Extend documentation
    • [x] Update more allauth templates to use our base template blocks and variables
    • [x] Open kuma-lib pull request: https://github.com/mozilla/kuma-lib/pull/47
    • [x] Look through all allauth provided views
    • [x] Update profile Persona display per https://bugzilla.mozilla.org/show_bug.cgi?id=1036134#c4
    • [x] Fix site messages in #2598
    opened by jezdez 35
  • Bug 1308322: Upgrade to selenium 3.x

    Bug 1308322: Upgrade to selenium 3.x

    Builds on py.test updates in #4210 with Selenium updates:

    • selenium 2.53.6 -> 3.4.1: Support for GeckoDriver 0.15.0+, Firefox 52+. Many fixes
    • pytest-base-url 1.1.0 -> 1.3.0: specify by env, add to metadata
    • pytest-html 1.10.1 -> 1.16.0: add metadata to report
    • pytest-selenium 1.4.0 -> 1.9.1: Move cloud testing credentials from default config files to new files or environment. Re-write Firefox options method. Work with metadata.
    • pytest-metadata==1.3.0: New dependency of pytest-selenium

    Django tests and coverage worked for me. I was able to run the functional tests locally with Chrome and Firefox. I tried running the Selenium hub and remote locally, but wasn't able to get it working (KeyError: 'moz:firefoxOptions' issue), and Jenkins has the same issue.

    Update Sep 19, 2017: The tests now run, and pass in Chrome, but they fail when run with node-firefox (timeouts) and when run locally (2 tests that open new URLS, maybe in a tab)

    Update Oct 6, 2017: Selenium 3.6.0. The tests pass locally in Chrome and Firefox. They pass with node-chrome, but now do not run with node-firefox.

    Update Nov 7, 2017: Selenium 3.7.1. The tests pass in Chrome (with one flaky test for a recently changed feature), and 5 test failures in Firefox.

    Update Dec 6, 2017: Selenium 3.8.1. The tests pass in Chrome and local Firefox. I've found a way to make hover tests pass in Remote, and might be able to fix the failures.

    Update Jan 16, 2017: Selenium 3.8.1-erbium. After breaking up test-dashboard, tests pass in Chrome and Firefox. There are selective xfails for Firefox breakage around hover tests. The base functionality has been merged in other PRs, now we're down to just the Selenium 3.x update.

    opened by jwhitlock 34
  • Bug 1370594: New Homepage callouts, newsletter updates

    Bug 1370594: New Homepage callouts, newsletter updates

    • Simplify callout code
    • Move newsletter signup to callout
    • Group newsletter text and form in wrapping containers
    • Add new classes to newsletter for styling purposes
    • Newsletter gets better tablet layout
    • Newsletter goes to grid layout at small desktop screen sizes

    Testing notes:

    • if there are two newsletter signups on the page the JS fails
    • newsletter signup on article and profile pages need testing too
    • should I just remove the saucelabs code?
    opened by stephaniehobson 31
  • fix bug 1051877 - Launch signin windows/links when icons within header login when clicked

    fix bug 1051877 - Launch signin windows/links when icons within header login when clicked

    Also:

    • Remove 'persona-loaded' CSS class from Persona buttons as we no longer lazyload Persona
    • Use JavaScript best practices for Persona launch link (avoid javascript: ... as the href)

    Please spot-test:

    • [x] Logging in with Persona via the sign-in page and via the header widget
    • [x] Ensure optimizely + analytics events are sent
    • [x] Ensure the "next" redirect functionality works as intended

    Let me know if there are questions.

    opened by darkwing 31
  • KeyError username on signup with GitHub

    KeyError username on signup with GitHub

    https://sentry.prod.mozaws.net/operations/mdn-prod/issues/7399307/

    Resolver404: {'tried': [[<RegexURLPattern None ^media/(?:redesign/)?css/(?P<doc>.*)-min.css$>], [<RegexURLPattern None ^media/(?:redesign/)?js/(?P<doc>.*)-min.js$>], [<RegexURLPattern None ^media/(?:redesign/)?img(?P<suffix>.*)$>], [<RegexURLPattern None ^media/(?:redesign/)?css(?P<suffix>.*)$>], [<RegexURLPattern None ^media/(?:redesign/)?js(?P<suffix>.*)$>], [<RegexURLPattern None ^media/(?:redesign/)?fonts(?P<suffix>.*)$>], [<RegexURLPattern None ^media/uploads/demos/(?:.*)$>], [<RegexURLPattern None (?i)^(?P<one>.*)//(?P<two>.*)//(?P<three>.*)$>], [<RegexURLPattern None (?i)^(?P<one>.*)//(?P<two>.*)$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/2_1_canvas_rect.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/2_2_canvas_moveto.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/2_3_canvas_lineto.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/2_4_canvas_arc.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/2_5_canvas_quadraticcurveto.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/2_6_canvas_beziercurveto.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/3_1_canvas_drawimage.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/3_2_canvas_drawimage.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/3_3_canvas_drawimage.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/3_4_canvas_gallery.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/4_1_canvas_fillstyle.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/4_2_canvas_strokestyle.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/4_3_canvas_globalalpha.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/4_4_canvas_rgba.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/4_5_canvas_linewidth.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/4_6_canvas_linecap.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/4_7_canvas_linejoin.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/4_8_canvas_miterlimit.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/4_9_canvas_lineargradient.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/4_10_canvas_radialgradient.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/4_11_canvas_createpattern.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/5_1_canvas_savestate.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/5_2_canvas_translate.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/5_3_canvas_rotate.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/5_4_canvas_scale.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/6_1_canvas_composite.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/6_2_canvas_clipping.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/globalCompositeOperation.html$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/images/backdrop.png$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/images/bg_gallery.png$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/images/gallery_1.jpg$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/images/gallery_2.jpg$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/images/gallery_3.jpg$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/images/gallery_4.jpg$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/images/gallery_5.jpg$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/images/gallery_6.jpg$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/images/gallery_7.jpg$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/images/gallery_8.jpg$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/images/picture_frame.png$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/images/rhino.jpg$>], [<RegexURLPattern None (?i)^samples/canvas-tutorial/images/wallpaper.png$>], [<RegexURLPattern None (?i)^samples/domref/mozGetAsFile.html$>], [<RegexURLPattern None (?i)^samples/raycaster/input.js$>], [<RegexURLPattern None (?i)^samples/raycaster/Level.js$>], [<RegexURL...
      File "redirect_urls/middleware.py", line 14, in __call__
        resolver_match = self.resolver.resolve(request.path_info)
      File "newrelic/hooks/framework_django.py", line 600, in wrapper
        return _wrapped(*args, **kwargs)
      File "newrelic/hooks/framework_django.py", line 588, in _wrapped
        result = wrapped(path)
      File "newrelic/hooks/framework_django.py", line 575, in wrapper
        return wrapped(*args, **kwargs)
      File "django/urls/resolvers.py", line 394, in resolve
        raise Resolver404({'tried': tried, 'path': new_path})
    
    KeyError: 'username'
    (10 additional frame(s) were not displayed)
    ...
      File "allauth/socialaccount/views.py", line 41, in dispatch
        return super(SignupView, self).dispatch(request, *args, **kwargs)
      File "allauth/account/views.py", line 77, in dispatch
        response = super(RedirectAuthenticatedUserMixin,
      File "allauth/account/views.py", line 190, in dispatch
        return super(CloseableSignupMixin, self).dispatch(request,
      File "allauth/account/views.py", line 103, in post
        response = self.form_valid(form)
    
    KeyError: 'username'
    
    p1 
    opened by peterbe 28
  • [Bug 1331729] Language preference cookie to stop site redirection

    [Bug 1331729] Language preference cookie to stop site redirection

    You need to clear your browser cache or using private browsing before testing this

    As the past code was redirecting permanently with http 301 status code, It should be return with temporary redirect with http 302

    It was fixed in kitsune long ago by James, But was not ported back to kuma.

    The Implementation is based on kitsune, refactored some part of the code to increase readability.

    @jwhitlock @escattone r?

    Need to be done:

    • [x] Pass all the unittests
    • [x] Write tests for the functionality
    opened by safwanrahman 28
  • Add CSS for MathML fallback

    Add CSS for MathML fallback

    This is related with Bug 981409.

    Short Description

    Some browsers don't support MathML and because of this the sections in MDN that cover MathML will be bad render. As example, visit https://developer.mozilla.org/en-US/docs/Web/MathML/Examples/MathML_Pythagorean_Theorem with Firefox (that support MathML) and with Chrome (that don't support MathML).

    @fred-wang wrote a small CSS to "fix" the lack of MathML support for basic math expressions and ask me to add it into kuma.

    Examples

    View of MDN sample with this PR in Firefox:

    screenshot from 2014-03-26 14 52 24

    View of MDN sample with this PR in Chrome:

    screenshot from 2014-03-26 14 52 13

    opened by rgaiacs 27
  • Adding the promote-js embed script

    Adding the promote-js embed script

    About promote MDN script People can embed this code in their sites and it will scan their site content for keywords such as 'JavaScript' and will link it back to the corresponding page on MDN on that topic.

    Code to embed in sites

    <!-- Include the below line only if the page doesn't have jQuery included already -->
    <script src="https://code.jquery.com/jquery-2.1.0.min.js"></script>
    
    <!-- The rest of the lines are required -->
    <script>
        (function(){
            window._promote_mdn_options = {maxlinks: 3}; // Configurable settings
            var e = document.createElement('script'); e.type='text/javascript';
            e.src = document.location.protocol + '//developer.cdn.mozilla.net/media/redesign/js/promote-mdn.js';
            var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(e, s);
        })();
    </script>
    
    opened by riverspirit 27
  • Add stripe subscription to user profile edit view

    Add stripe subscription to user profile edit view

    Fixes #6183, Fixes #6184, Fixes #6185, Fixes #6186 it felt natural to do everything at once

    What it changes

    • adds a signup form and includes the stripe modal in the user edit view
    • creates a stripe customer and subscription, utilizing STRIPE_PUBLIC_KEY, STRIPE_SECRET_KEY and STRIPE_PLAN_ID
    • uses the stripe_customer_id column in auth_users to link it, so that no multiple customers are being create
    • retrieves the relevant subscription for display once subscribed

    TODOs

    • [x] add some tests (since the test requires private env vars, its not being run for this PR, but I've added them to Travis, so they will be run on master)
    • [x] add link for "contact support" (@atopal where should that link point to?)

    How to run it

    opened by Gregoor 26
Owner
MDN Web Docs
Data and tools related to MDN Web Docs (formerly Mozilla Developer Network, formerly Mozilla Developer Center...)
MDN Web Docs
Project documentation with Markdown.

MkDocs Project documentation with Markdown. View the MkDocs documentation. Project release notes. Visit the MkDocs wiki for community resources, inclu

MkDocs 15.6k Jan 2, 2023
Your Project with Great Documentation.

Read Latest Documentation - Browse GitHub Code Repository The only thing worse than documentation never written, is documentation written but never di

Timothy Edmund Crosley 809 Dec 28, 2022
the project for the most brutal and effective language learning technique

- "The project for the most brutal and effective language learning technique" (c) Alex Kay The langflow project was created especially for language le

Alexander Kaigorodov 7 Dec 26, 2021
Software engineering course project. Secondhand trading system.

PigeonSale Software engineering course project. Secondhand trading system. Documentation API doumenatation: list of APIs Backend documentation: notes

Harry Lee 1 Sep 1, 2022
Project created to help beginner programmers to study, despite the lack of internet!

Project created to help beginner programmers to study, despite the lack of internet!

Dev4Dev 2 Oct 25, 2021
Portfolio project for Code Institute Full Stack software development course.

Comic Sales tracker This project is the third milestone project for the Code Institute Diploma in Full Stack Software Development. You can see the fin

null 1 Jan 10, 2022
This is a small project written to help build documentation for projects in less time.

Documentation-Builder This is a small project written to help build documentation for projects in less time. About This project builds documentation f

Tom Jebbo 2 Jan 17, 2022
freeCodeCamp Scientific Computing with Python Project for Certification.

Polygon_Area_Calculator freeCodeCamp Python Project freeCodeCamp Scientific Computing with Python Project for Certification. In this project you will

Rajdeep Mondal 1 Dec 23, 2021
Data-Scrapping SEO - the project uses various data scrapping and Google autocompletes API tools to provide relevant points of different keywords so that search engines can be optimized

Data-Scrapping SEO - the project uses various data scrapping and Google autocompletes API tools to provide relevant points of different keywords so that search engines can be optimized; as this information is gathered, the marketing team can target the top keywords to get your company’s website higher on a results page.

Vibhav Kumar Dixit 2 Jul 18, 2022
Toolchain for project structure and documents optimisation

ritocco Toolchain for project structure and documents optimisation

Harvey Wu 1 Jan 12, 2022
Explicit, strict and automatic project version management based on semantic versioning.

Explicit, strict and automatic project version management based on semantic versioning. Getting started End users Semantic versioning Project version

Dmytro Striletskyi 6 Jan 25, 2022
Python-samples - This project is to help someone need some practices when learning python language

Python-samples - This project is to help someone need some practices when learning python language

Gui Chen 0 Feb 14, 2022
The software that powers the sPot: a 4th generation

This code is meant to accompany this project in which a Spotify client is built into an iPod "Classic" from 2004. Everything is meant to run on a Raspberry Pi Zero W.

Guy Dupont 683 Dec 28, 2022
The Open edX platform, the software that powers edX!

This is the core repository of the Open edX software. It includes the LMS (student-facing, delivering courseware), and Studio (course authoring) compo

edX 6.2k Jan 1, 2023
ckan 3.6k Dec 27, 2022
The source code that powers readthedocs.org

Welcome to Read the Docs Purpose Read the Docs hosts documentation for the open source community. It supports Sphinx docs written with reStructuredTex

Read the Docs 7.4k Dec 25, 2022
learn python in 100 days, a simple step could be follow from beginner to master of every aspect of python programming and project also include side project which you can use as demo project for your personal portfolio

learn python in 100 days, a simple step could be follow from beginner to master of every aspect of python programming and project also include side project which you can use as demo project for your personal portfolio

BDFD 6 Nov 5, 2022
🛠️ Learn a technology X by doing a project - Search engine of project-based learning

Learn X by doing Y ??️ Learn a technology X by doing a project Y Website You can contribute by adding projects to the CSV file.

William 408 Dec 20, 2022
pipreqs - Generate pip requirements.txt file based on imports of any project. Looking for maintainers to move this project forward.

pipreqs - Generate requirements.txt file for any project based on imports Installation pip install pipreqs Usage Usage: pipreqs [options] <path>

Vadim Kravcenko 4.8k Dec 31, 2022
Toolkit for Machine Learning, Natural Language Processing, and Text Generation, in TensorFlow. This is part of the CASL project: http://casl-project.ai/

Texar is a toolkit aiming to support a broad set of machine learning, especially natural language processing and text generation tasks. Texar provides

ASYML 2.3k Jan 7, 2023