Skip to content

Commit aa8fb36

Browse files
Copia Ingles
1 parent 6c627fe commit aa8fb36

File tree

86 files changed

+14795
-142
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

86 files changed

+14795
-142
lines changed

.gitignore

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,22 @@ _site/
99
.sass-cache/
1010
.jekyll-cache/
1111
.jekyll-metadata
12+
package-lock.json
13+
package.json
1214

1315
# Ignore folders generated by Bundler
1416
.bundle/
1517
vendor/
18+
19+
# Ignore folders for mermaid diagrams
20+
assets/
21+
22+
# Ignore template folder
23+
docs/Day0/
24+
25+
# Ignore any slides folders
26+
slides/
27+
28+
# Environment files
29+
.venv
30+
.env

Gemfile.lock

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,15 @@ GEM
1313
http_parser.rb (~> 0)
1414
eventmachine (1.2.7)
1515
ffi (1.17.1-arm64-darwin)
16+
ffi (1.17.1-x64-mingw-ucrt)
1617
ffi (1.17.1-x86_64-linux-gnu)
1718
forwardable-extended (2.6.0)
1819
google-protobuf (4.29.3-arm64-darwin)
1920
bigdecimal
2021
rake (>= 13)
22+
google-protobuf (4.29.3-x64-mingw-ucrt)
23+
bigdecimal
24+
rake (>= 13)
2125
google-protobuf (4.29.3-x86_64-linux)
2226
bigdecimal
2327
rake (>= 13)
@@ -78,6 +82,8 @@ GEM
7882
safe_yaml (1.0.5)
7983
sass-embedded (1.83.4-arm64-darwin)
8084
google-protobuf (~> 4.29)
85+
sass-embedded (1.83.4-x64-mingw-ucrt)
86+
google-protobuf (~> 4.29)
8187
sass-embedded (1.83.4-x86_64-linux-gnu)
8288
google-protobuf (~> 4.29)
8389
terminal-table (3.0.2)
@@ -87,6 +93,7 @@ GEM
8793

8894
PLATFORMS
8995
arm64-darwin
96+
x64-mingw-ucrt
9097
x86_64-linux-gnu
9198

9299
DEPENDENCIES

README.md

Lines changed: 77 additions & 123 deletions
Original file line numberDiff line numberDiff line change
@@ -1,174 +1,128 @@
1-
# just-the-docs-template
1+
# 10 Days of Code with AI
22

3-
This is a *bare-minimum* template to create a [Jekyll] site that:
3+
This repository contains the course notes and code examples of the course [10 Days of Python with AI]. The course is aimed for curious Vibe coders with no programming background who want to have a wholistic view of coding and ai technologies and the skills to debug, specify and scrutinise code that is mainly produced with AI.
44

5-
- uses the [Just the Docs] theme;
6-
- can be built and published on [GitHub Pages];
7-
- can be built and previewed locally, and published on other platforms.
5+
The course is mainly produce to use [Visual Studio Code] and [Github Copilot]; and a big part of it uses python for automatization, API calls, web programming, AI programming and more.
86

9-
More specifically, the created site:
7+
The course notes themselves may be found in [10 Days of Code with AI course notes] and the code examples in [git hub code examples]. Once [Visual Studio Code] and [python] are installed in your machine, you can run the examples by simply typing in your terminal:
108

11-
- uses a gem-based approach, i.e. uses a `Gemfile` and loads the `just-the-docs` gem;
12-
- uses the [GitHub Pages / Actions workflow] to build and publish the site on GitHub Pages.
9+
```python
10+
python <filename>.py
11+
```
1312

14-
To get started with creating a site, simply:
13+
## Cloning the Repository
1514

16-
1. click "[use this template]" to create a GitHub repository
17-
2. go to Settings > Pages > Build and deployment > Source, and select GitHub Actions
15+
If you wish you could install git on your vs code and clone this repository in your local machine.
1816

19-
If you want to maintain your docs in the `docs` directory of an existing project repo, see [Hosting your docs from an existing project repo](#hosting-your-docs-from-an-existing-project-repo).
17+
### Installing Bash in Visual Studio Code
2018

21-
After completing the creation of your new site on GitHub, update it as needed:
19+
If you're on Windows and want to use Bash in VS Code, you can install [Git for Windows](https://git-scm.com/download/win), which includes Git Bash.
2220

23-
## Replace the content of the template pages
21+
1. Download and install Git for Windows.
22+
2. After installation, open VS Code.
23+
3. Press <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>P</kbd> and type `Terminal: Select Default Profile`.
24+
4. Choose `Git Bash` from the list.
2425

25-
Update the following files to your own content:
26+
Now, when you open a new terminal in VS Code, it will use Bash.
2627

27-
- `index.md` (your new home page)
28-
- `README.md` (information for those who access your site repo on GitHub)
28+
> **Note:** Installing Git for Windows will also install Git Bash. You do not need to install Git separately—Git Bash is included as part of the Git installation package.
2929
30-
## Changing the version of the theme and/or Jekyll
30+
### Create a virtual environmenta and activate
31+
A **virtual environment** in Python is an isolated workspace that allows you to install and manage packages separately from your global Python installation. This means each project can have its own dependencies, versions, and settings without interfering with other projects or the system Python.
3132

32-
Simply edit the relevant line(s) in the `Gemfile`.
33+
**Why use a virtual environment?**
3334

34-
## Adding a plugin
35+
- Isolation: Keeps project dependencies separate, avoiding conflicts between packages required by different projects.
36+
- Reproducibility: Makes it easier to share your project with others, since you can specify exactly which packages and versions are needed.
37+
Safety: Prevents accidental changes to system-wide Python packages.
3538

36-
The Just the Docs theme automatically includes the [`jekyll-seo-tag`] plugin.
39+
Typical workflow:
40+
- Create a virtual environment for your project.
41+
- Activate it before working.
42+
- Install packages using pip—these go only into the virtual environment.
43+
- Deactivate when done.
3744

38-
To add an extra plugin, you need to add it in the `Gemfile` *and* in `_config.yml`. For example, to add [`jekyll-default-layout`]:
45+
This approach is especially useful in collaborative or production settings, ensuring consistency and minimizing dependency issues.
3946

40-
- Add the following to your site's `Gemfile`:
47+
To create a Python virtual environment, run the following command in your terminal:
4148

42-
```ruby
43-
gem "jekyll-default-layout"
44-
```
45-
46-
- And add the following to your site's `_config.yml`:
47-
48-
```yaml
49-
plugins:
50-
- jekyll-default-layout
51-
```
52-
53-
Note: If you are using a Jekyll version less than 3.5.0, use the `gems` key instead of `plugins`.
54-
55-
## Publishing your site on GitHub Pages
56-
57-
1. If your created site is `YOUR-USERNAME/YOUR-SITE-NAME`, update `_config.yml` to:
58-
59-
```yaml
60-
title: YOUR TITLE
61-
description: YOUR DESCRIPTION
62-
theme: just-the-docs
63-
64-
url: https://YOUR-USERNAME.github.io/YOUR-SITE-NAME
65-
66-
aux_links: # remove if you don't want this link to appear on your pages
67-
Template Repository: https://github.com/YOUR-USERNAME/YOUR-SITE-NAME
68-
```
69-
70-
2. Push your updated `_config.yml` to your site on GitHub.
71-
72-
3. In your newly created repo on GitHub:
73-
- go to the `Settings` tab -> `Pages` -> `Build and deployment`, then select `Source`: `GitHub Actions`.
74-
- if there were any failed Actions, go to the `Actions` tab and click on `Re-run jobs`.
75-
76-
## Building and previewing your site locally
77-
78-
Assuming [Jekyll] and [Bundler] are installed on your computer:
79-
80-
1. Change your working directory to the root directory of your site.
49+
```bash
50+
python -m venv venv
51+
```
8152

82-
2. Run `bundle install`.
53+
This will create a new directory called `venv` containing the virtual environment.
8354

84-
3. Run `bundle exec jekyll serve` to build your site and preview it at `localhost:4000`.
55+
To activate the virtual environment:
8556

86-
The built site is stored in the directory `_site`.
57+
- On Windows:
58+
```bash
59+
.\venv\Scripts\activate
60+
```
61+
- On macOS/Linux/bash terminal:
62+
```bash
63+
source venv/bin/activate
64+
```
8765

88-
## Publishing your built site on a different platform
66+
Once activated, you can install packages using `pip` and they will be isolated to this environment.
8967

90-
Just upload all the files in the directory `_site`.
68+
To deactivate the Python virtual environment, simply run:
9169

92-
## Customization
70+
```bash
71+
deactivate
72+
```
9373

94-
You're free to customize sites that you create with this template, however you like!
74+
This will return your terminal to the global Python environment.
9575

96-
[Browse our documentation][Just the Docs] to learn more about how to use this theme.
9776

98-
## Hosting your docs from an existing project repo
77+
### Clone this repository
9978

100-
You might want to maintain your docs in an existing project repo. Instead of creating a new repo using the [just-the-docs template](https://github.com/just-the-docs/just-the-docs-template), you can copy the template files into your existing repo and configure the template's Github Actions workflow to build from a `docs` directory. You can clone the template to your local machine or download the `.zip` file to access the files.
79+
To clone this repository to your local machine, open your terminal and run:
10180

102-
### Copy the template files
81+
```bash
82+
git clone https://github.com/StructuralWizard/10DaysOfCode.github.io.git
83+
```
10384

104-
1. Create a `.github/workflows` directory at your project root if your repo doesn't already have one. Copy the `pages.yml` file into this directory. GitHub Actions searches this directory for workflow files.
85+
This will create a local copy of the repository in your current directory.
10586

106-
2. Create a `docs` directory at your project root and copy all remaining template files into this directory.
87+
### Install the dependencies of this repository
88+
To install the dependencies listed in `requirements.txt`, make sure your virtual environment is activated, then run:
10789

108-
### Modify the GitHub Actions workflow
90+
```bash
91+
pip install -r requirements.txt
92+
```
10993

110-
The GitHub Actions workflow that builds and deploys your site to Github Pages is defined by the `pages.yml` file. You'll need to edit this file to that so that your build and deploy steps look to your `docs` directory, rather than the project root.
94+
This will install all the required Python packages for the project.
11195

112-
1. Set the default `working-directory` param for the build job.
96+
### Run site in local server
97+
This site has been created using [Just the Docs] theme and the hosted in [GitHub Pages]. You can [Browse our documentation] for more information.
11398

114-
```yaml
115-
build:
116-
runs-on: ubuntu-latest
117-
defaults:
118-
run:
119-
working-directory: docs
120-
```
99+
To visualise the github site in the browser rather than editing its markdown you can run `bundle exec jekyll serve` from the main 10DaysOfCode folder where you have the _config.yml file.
121100

122-
2. Set the `working-directory` param for the Setup Ruby step.
101+
Assuming [Jekyll] and [Bundler] are installed on your computer:
123102

124-
```yaml
125-
- name: Setup Ruby
126-
uses: ruby/setup-ruby@v1
127-
with:
128-
ruby-version: '3.3'
129-
bundler-cache: true
130-
cache-version: 0
131-
working-directory: '${{ github.workspace }}/docs'
132-
```
103+
1. Change your working directory to the root directory of your site.
133104

134-
3. Set the path param for the Upload artifact step:
105+
2. Run `bundle install`.
135106

136-
```yaml
137-
- name: Upload artifact
138-
uses: actions/upload-pages-artifact@v3
139-
with:
140-
path: docs/_site/
141-
```
107+
3. Run `bundle exec jekyll serve` to build your site and preview it at `localhost:4000`.
142108

143-
4. Modify the trigger so that only changes within the `docs` directory start the workflow. Otherwise, every change to your project (even those that don't affect the docs) would trigger a new site build and deploy.
109+
The built site is stored in the directory `_site`.
144110

145-
```yaml
146-
on:
147-
push:
148-
branches:
149-
- "main"
150-
paths:
151-
- "docs/**"
152-
```
153111

154-
## Licensing and Attribution
112+
Note: If you are using a Jekyll version less than 3.5.0, use the `gems` key instead of `plugins`.
155113

156-
This repository is licensed under the [MIT License]. You are generally free to reuse or extend upon this code as you see fit; just include the original copy of the license (which is preserved when you "make a template"). While it's not necessary, we'd love to hear from you if you do use this template, and how we can improve it for future use!
157114

158-
The deployment GitHub Actions workflow is heavily based on GitHub's mixed-party [starter workflows]. A copy of their MIT License is available in [actions/starter-workflows].
159115

160116
----
161117

162-
[^1]: [It can take up to 10 minutes for changes to your site to publish after you push the changes to GitHub](https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll#creating-your-site).
163-
118+
[Visual Studio Code]: https://code.visualstudio.com/
119+
[Github Copilot]: https://code.visualstudio.com/docs/copilot/overview
120+
[python]: https://www.python.org/downloads/
164121
[Jekyll]: https://jekyllrb.com
165122
[Just the Docs]: https://just-the-docs.github.io/just-the-docs/
166123
[GitHub Pages]: https://docs.github.com/en/pages
167-
[GitHub Pages / Actions workflow]: https://github.blog/changelog/2022-07-27-github-pages-custom-github-actions-workflows-beta/
168124
[Bundler]: https://bundler.io
169-
[use this template]: https://github.com/just-the-docs/just-the-docs-template/generate
170-
[`jekyll-default-layout`]: https://github.com/benbalter/jekyll-default-layout
171-
[`jekyll-seo-tag`]: https://jekyll.github.io/jekyll-seo-tag
172-
[MIT License]: https://en.wikipedia.org/wiki/MIT_License
173-
[starter workflows]: https://github.com/actions/starter-workflows/blob/main/pages/jekyll.yml
174-
[actions/starter-workflows]: https://github.com/actions/starter-workflows/blob/main/LICENSE
125+
[10 Days of Python with AI]: https://youtube.com/@10daysofpythonwithai?si=3wobcw1e11B7dlZI
126+
[Structural Wizard]: https://github.com/StructuralWizard/
127+
[10 Days of Code with AI course notes]: https://structuralwizard.github.io/10DaysOfCode.github.io/
128+
[git hub code examples]: https://github.com/StructuralWizard/10DaysOfCode.github.io/tree/main/_python_code

_config.yml

Lines changed: 77 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,83 @@
1-
title: Just the Docs Template
2-
description: A starter template for a Jeykll site using the Just the Docs theme!
1+
title: 10 Days of Code with AI
2+
description: A quickstart for Vibe Coders with no coding experience
33
theme: just-the-docs
44

55
url: https://just-the-docs.github.io
66

77
aux_links:
88
Template Repository: https://github.com/just-the-docs/just-the-docs-template
9+
10+
11+
collections:
12+
python_code:
13+
output: true
14+
15+
just_the_docs:
16+
collections:
17+
python_code:
18+
name: Python Code
19+
description: Python code examples for the 10 Days of Code
20+
nav_exclude: false # to exclude the entire collection from the main navigation
21+
nav_fold: false # to fold the collection, instead of showing links to all its top-level pages2
22+
search_exclude: false # to exclude all the collection pages from search results
23+
# For copy button on code
24+
enable_copy_code_button: true
25+
26+
# Back to top link
27+
back_to_top: true
28+
back_to_top_text: "Back to top"
29+
30+
31+
mermaid:
32+
# Version of mermaid library
33+
# Pick an available version from https://cdn.jsdelivr.net/npm/mermaid/
34+
version: "11.6.0"
35+
# for (v10+)
36+
path: "/assets/js/mermaid.esm.min.mjs"
37+
#path: "./node_modules/mermaid/dist/mermaid.esm.min.mjs"
38+
# for (<v10):
39+
# path: "/assets/js/mermaid.min.js"
40+
# Note: copy both `mermaid.esm.min.mjs` (v10+) or `mermaid.min.js` (<v10) and the associated
41+
# `.map` file from the specified version of `mermaid/dist` to `/assets/js/`.
42+
43+
# Color scheme currently only supports "dark", "light"/nil (default), or a custom scheme that you define
44+
color_scheme: nil
45+
46+
callouts_level: quiet # or loud
47+
callouts:
48+
highlight:
49+
color: yellow
50+
important:
51+
title: Important
52+
color: blue
53+
new:
54+
title: New
55+
color: green
56+
note:
57+
title: Note
58+
color: purple
59+
warning:
60+
title: Warning
61+
color: red
62+
63+
# Exclude files from processing
64+
exclude:
65+
- "**/*.xlsm"
66+
- "**/*.xlsx"
67+
- "**/*.xls"
68+
- "**/*.pdf"
69+
- "**/*.doc"
70+
- "**/*.docx"
71+
- "**/*.pptx"
72+
- "**/*.ppt"
73+
- "**/slides/*.xlsm"
74+
- "**/slides/*.xlsx"
75+
- "**/slides/*.xls"
76+
- "**/slides/*.pdf"
77+
- "**/slides/*.doc"
78+
- "**/slides/*.docx"
79+
- "**/slides/*.pptx"
80+
- "**/slides/*.ppt"
81+
- "docs/Day1/slides/alignme.xlsm"
82+
- node_modules/
83+
- vendor/

0 commit comments

Comments
 (0)