Code Monkey home page Code Monkey logo

python-coding-challenges's Introduction

FreeCodeCamp Python Curriculum

View live: https://freecodecamp.github.io/python-coding-challenges

To run locally:

  1. Fork this repo
  2. Run git clone [your-fork-url]
  3. Run npm install
  4. Run npm run start

Adding a new challenge or fixing an existing one?

  • Generating challenge ID:

    1. Open your terminal
    2. run mongo
    3. run ObjectId()
    4. copy string and paste into lesson_settings.json
  • Building challenges.json file:

    1. Open your terminal
    2. Navigate to project directory
    3. run node generate-challenge-json.js
    4. if no errors are thrown you're good to commit and open a pr
  • Opening a PR

    1. Include a reference to the issue
    2. If its a new challenge, mention the chapter its being added to
    3. continue being awesome and helping us create this curriculum!

Maintaining your Fork:

  1. git remote add upstream https://github.com/freeCodeCamp/python-coding-challenges.git
  2. git checkout master
  3. git pull upstream

python-coding-challenges's People

Contributors

bgroveben avatar ethan-arrowood avatar jamaurz avatar whmcdonaldiii 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

python-coding-challenges's Issues

Move to React App

After a good deal of research and some extensive trial & error I couldn't figure out to efficiently build the routing and history functionality from scratch. SO I rebuilt the entire app using React and React Router ๐Ÿ‘ Only took about a few hours to do, and I should be able to finish it this evening.

Heres my repo: https://github.com/Ethan-Arrowood/fcc-python-react-app

Heres the live (unfinished version): https://ethan-arrowood.github.io/fcc-python-react-app

This will be way easier to maintain and document as well.

Curriculum Outline

Curriculum Outline

In the root directory of the project there will exist a directory: challenges, and a file called classroom_settings.json

The challenges directory will contain each lesson directory title like so: [C#].[L#].<name> i.e. 2.1.Addition (means the Addition lesson is Lesson 1 of Chapter 2).
Due note that chapter and lesson numbers is for our organization purposes and will not be reflected in the Repl.it Classroom.

Each lesson directory will contain four files:

  1. lesson_code.py
  2. lesson_tests.py
  3. lesson.md
  4. lesson_settings.json

lesson_code.py will be loaded into the initial-code section (top left container) of the classroom.

lesson_tests.py will be loaded into a hidden unittest file (behind the scenes).

lesson.md will be loaded into the markdown section (bottom right container) of the classroom.

lesson_settings.json will be used to store information such as Title, Chapter, Lesson number, ID(?). This will mainly be for FCC, but repl will be able to utilize the Title property and maybe the ID property.

Each Repl.it Classroom lesson url will be added to the challenges.json file in the project root directory.


[Down The Road] - implement a python script that auto builds the challenges.json file
The current structure for the FCC Python Curriculum is: Beginner Section, Intermediate Section, & Special Topic Section.

Beginner Section:

  • Introduction to Python
  • Output
    • Print
    • Escape Characters
    • input
  • Data Types
    • Integers, Floats
    • Strings
    • Tuples
    • Lists
    • Sets
    • Dictionaries
  • Operators - bgroveben
    • +,-, *, /, %, **
    • <, >, <=, >=, ==, !=
    • =
    • True, False, and, or, not
    • in, not in
    • is, is not
  • Math - bgroveben
    • Add, Subtract, Multiply, Divide
    • Power, sqrt(), abs(), round(), sum(), max(), min()
  • Variables
  • Conditionals
    • if, elif, else
  • Loops
    • while, for (in range), for (in list), for (in string)
  • Functions
  • Classes

Intermediate Section:

  • File I/O
  • Iterators & Generators
  • Lambda - robbiemu
  • Conditionals
  • OOP
  • Modules, Libraries, Packages
  • File and Error Handling
  • Advanced Objects and DataTypes
  • Print Formatting
  • List Comprehensions
  • Decorators

Special Topic Section:

  • Machine Learning
  • Game Development
  • Webscraping (BeautifulSoup)
  • GIS (Leaflet/Folium)
  • Flask/Django (better to focus on one not both)
  • Data Analysis (Panda/Numpy)
  • Data Visualization (brokeh)
  • GUI (tkinter)
  • Geocoding (geopy)
  • Natural Language Toolkit (NLTK)

Map Functionality

  • Add Map
  • Auto-generated based on challenges.json
  • Reflect 'completed' challenges (from localstorage)
  • [Down The Road] Reflect 'Chapter/Lesson' challenge structure - use collapsable lists
  • Challenges able to be loaded by hyperlink

Create CONTRIBUTING.md

  • How to report a bug
  • How to suggest a new feature/lesson
  • How to set up your local development environment
  • What you should be contributin
  • . . .

generate-challenge-json.js bug with incomplete chapters

From: #23

Discovered bug in generate-challenge-json.js. When a new challenge is added to an empty chapter, and the new challenge is not the first challenge in the chapter, it will be added as if it is the 'first'. When generate-challenge-json.js is ran again it will re-add the (not-first) challenge to the chapter producing unpredictable chapter structure. Will open a new issue and begin work on this soon.

I'll figure it out. Might need to add some sort of 'skip' functionality to renderMap, and loadChallenges for 'empty challenges'?

Challenges not opening

it only displaying the content of the map,but challenge is not opening,and even there is no facebook signup using repl

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.