{"id":24444085,"url":"https://github.com/adrianobispo/javascript-learning-hub","last_synced_at":"2026-02-11T14:03:43.665Z","repository":{"id":253869823,"uuid":"575625549","full_name":"AdrianoBispo/javascript-learning-hub","owner":"AdrianoBispo","description":"Este repositório foi projetado para organizar exemplos e exercícios de Javascript de maneira clara, com base nos níveis de conhecimento (Básico, Intermediário e Avançado). ","archived":false,"fork":false,"pushed_at":"2025-02-05T16:59:47.000Z","size":34551,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-30T18:23:00.237Z","etag":null,"topics":["chatgpt","desafios-javascript","exercises","ia-generativa","javascript","javascript-exercises"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AdrianoBispo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-12-07T23:54:08.000Z","updated_at":"2025-02-05T16:59:51.000Z","dependencies_parsed_at":"2025-01-28T06:19:52.991Z","dependency_job_id":"f5e245c7-56e8-4f01-9d82-3766f0f74f9e","html_url":"https://github.com/AdrianoBispo/javascript-learning-hub","commit_stats":null,"previous_names":["adrianobispo/trainingjs","adrianobispo/javascript-learning-hub"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdrianoBispo%2Fjavascript-learning-hub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdrianoBispo%2Fjavascript-learning-hub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdrianoBispo%2Fjavascript-learning-hub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AdrianoBispo%2Fjavascript-learning-hub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AdrianoBispo","download_url":"https://codeload.github.com/AdrianoBispo/javascript-learning-hub/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251752655,"owners_count":21638153,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chatgpt","desafios-javascript","exercises","ia-generativa","javascript","javascript-exercises"],"created_at":"2025-01-20T22:41:29.069Z","updated_at":"2026-02-11T14:03:43.622Z","avatar_url":"https://github.com/AdrianoBispo.png","language":"JavaScript","readme":"# JavaScript Learning Hub\n\nBem-vindo ao **JavaScript Learning Hub**! Este repositório é dedicado a quem deseja aprender Javascript iniciando do básico e indo até o nível mais avançado por meio de exemplos e exercícios práticos elaborados com à ajuda do [ChatGPT](https://chatgpt.com/) e do [Gemini](https://gemini.google.com/app). O objetivo é facilitar o aprendizado e oferecer recursos organizados para consulta e prática.\n\n## Estrutura do Repositório\n\n|                  Diretório                   |                        Descrição                            |\n|----------------------------------------------|-------------------------------------------------------------|\n| [``01-introducao``](/01-introducao/README.md) | Conheça a estrutura básica de um programa em Javascript e seus tipos de dados(``strings``, ``números``, ``booleans``, ``null``, ``undefined``); Aprenda a declarar as variáveis em Javascript(``let``, ``var``, ``const``) como e quando utilizar cada um deles; Aprenda a utilizar os Operadores Javascript(``aritméticos``, de ``comparação``, ``lógicos`` e de ``atribuição``); aprenda a utilizar as declarações condicionais: `if`, `else`, e `switch` para controle de fluxo e aprenda a aplicar os laços de repetição `for`, `while`, e `do-while`; Aprenda também a manipular strings através dos métodos nativo do Javascript; Aprenda a utilizar os métodos disponíveis no objeto ``console`` através de exemplos de uso. |                      \n| [``02-funcoes``](/02-funcoes/README.md) | Aprenda a criar e chamar funções em Javascript através de parâmetros e valores de retorno; conheça as funções anônimas e aprenda utilizá-las; compreenda a diferença entre ``Escopo Global`` vs ``Escopo Local`` e entenda sobre o ``Hoisting`` básico; aprenda sobre funções internas e escopo léxico e sobre funções de callbacks; conheça Funções de Ordem Superior(funções que recebem outras funções como argumento) e aprenda a utilizá-las. |\n| [``03-arrays``](/03-arrays/README.md) | Aprenda os principais métodos, como: `map()`, `filter()`, `reduce()`. |\n| [``04-objetos``](/04-objetos/README.md) | Aprenda a criar e manipular objetos. |\n| [``05-manipulacao-dom``](/05-manipulacao-dom/README.md) | Aprenda a selecionar elementos do DOM utilizando: ``getElementsByTagName``, ``getElementsByClassName``, ``getElementById``, ``querySelector``, ``querySelectorAll``; aprenda a modificá-los utilizando: ``textContent``, ``innerHTML``, ``style``, etc; aprenda os principais eventos: ``click``, ``mouseover``, etc. | \n| [``06-poo``](/06-poo/README.md)  | Aprenda sobre: Prototipagem e herança baseada em protótipos; conheça e aplique o paradigma de Orientação a Objetos em javascript utilizando ``Classes`` e ``extends``; aprenda a manipular objetos utilizando: Object.create, Object.assign, Object.freeze; Generators e iteradores.  | \n| [``07-manipulacao-erros``](/07-manipulacao-de-erros/README.md) | A manipulação de erros é uma técnica essencial para criar aplicações robustas, que saibam lidar com problemas inesperados. Usando ``try...catch``, validações de entrada, e tratamento em promessas, você pode criar um código mais resiliente e confiável. |\n| [``08-programacao-assincrona``](/08-programacao-assincrona/README.md) | Trabalhando com promessas e código assíncrono. |\n| [``09-web-apis``](/09-web-apis/README.md) | Aprenda sobre consumo de APIs Web, manipulação de JSON, comunicação com servidores e armazenamento localStorage. | \n\n\u003cdetails\u003e\n\u003csummary\u003e\u003ch3\u003ePróximos Passos: Avançando no Desenvolvimento Front-End com React\u003c/h3\u003e\u003c/summary\u003e\n\n#### Conhecendo o React\n\n- Configuração de ambiente (Vite ou Create React App);\n- Componentes funcionais e class-based;\n- Props, State, e Lifecycle.\n- Hooks principais: ``useState``, ``useEffect``.\n- React Router para navegação SPA.\n- Gerenciamento de estado:\n  - Context API.\n  - Redux (opcional para projetos mais complexos).\n\n#### Avançando com React\n\n- Renderização condicional e listas.\n- Refs e manipulação direta do DOM.\n- Lazy loading e Code Splitting.\n- Styled Components e CSS Modules.\n- Testes com React Testing Library.\n- Otimizações de performance:\n  - React.memo.\n  - Suspense.\n\n#### Projetos Práticos\n\n- Todo List com Context API.\n- Aplicação de galeria de fotos consumindo APIs.\n- Dashboard com gráficos e tabelas.\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003ch3\u003ePróximos Passos: Avançando no Desenvolvimento Front-End com Angular\u003c/h3\u003e\u003c/summary\u003e\n\n#### Conhecendo o Angular\n\n- Configuração de ambiente com Angular CLI.\n- Estrutura de um projeto Angular.\n- Conceitos principais:\n  - Módulos, Componentes, Templates.\n  - Data Binding (one-way e two-way).\n  - Diretivas (``*ngFor``, ``*ngIf``).\n- Serviços e Injeção de Dependência.\n- Roteamento e Navegação.\n- Comunicação entre componentes (Input, Output).\n\n#### Avançando com Angular\n\n- Observables e RxJS.\n- Formulários:\n  - Template-driven.\n  - Reactive Forms.\n- Interceptadores e Guards.\n- Lazy loading e modularização.\n- Testes com Jasmine e Karma.\n\n#### Projetos Práticos\n\n- Aplicação CRUD de cadastro de usuários.\n- E-commerce básico com carrinho de compras.\n- Aplicação de tarefas com autenticação JWT.\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003ch3\u003ePróximos Passos: Avançando no Desenvolvimento Front-End com Vue.js\u003c/h3\u003e\u003c/summary\u003e\n\n#### Conhecendo o Vue.js\n\n- Configuração de ambiente com Vue CLI ou Vite.\n- Introdução ao Vue:\n  - Diretivas (``v-bind``, ``v-for``, ``v-if``).\n  - Data Binding e Eventos.\n  - Computed Properties e Watchers.\n- Componentização:\n  - Criação e comunicação entre componentes (props e eventos).\n- Vue Router para navegação SPA.\n- Vuex (ou Pinia) para gerenciamento de estado.\n\n#### Avançando com Vue.js\n\n- Slots e Render Functions.\n- Reatividade com ``ref`` e ``reactive``.\n- Transições e animações.\n- Testes com Vue Test Utils e Jest.\n- Desempenho e otimização:\n  - Lazy loading e Code Splitting.\n\n#### Projetos Práticos\n\n- Galeria de imagens com filtros.\n- Sistema de blog com Vue Router e Vuex.\n- Aplicação de controle financeiro.\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003ch3\u003ePróximos Passos: Avançando no Desenvolvimento Back-End com Node.js\u003c/h3\u003e\u003c/summary\u003e\n\n#### Conhecendo o Node.js\n\n- Configuração de ambiente Node.js.\n- Módulos e pacotes com NPM.\n- Criação de servidores com ``http`` e Express.\n- Middleware no Express.\n- Operações de CRUD.\n\n#### Avançando com o Node.js\n\n- Banco de dados:\n  - Relacional: PostgreSQL/MySQL com Sequelize.\n  - NoSQL: MongoDB com Mongoose.\n- Autenticação e autorização com JWT.\n- Upload de arquivos com ``Multer``.\n- Websockets com ``Socket.IO``.\n\n#### Projetos Práticos\n\n- API RESTful para gestão de tarefas.\n- Chat em tempo real com Websockets.\n- Sistema de e-commerce (somente backend).\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003ch3\u003ePróximos Passos: Avançando no Desenvolvimento Full Stack com Next.js\u003c/h3\u003e\u003c/summary\u003e\n\n#### Conhecendo o Next.js\n\n- Introdução ao Next.js.\n- Páginas e rotas dinâmicas.\n- SSR (Server-Side Rendering) e SSG (Static Site Generation).\n- API Routes para criação de endpoints.\n- Integração com bibliotecas de estilo (TailwindCSS, Styled Components).\n\n#### Avançando com o Next.js\n\n- Construção de APIs RESTful com Next.js.\n- Banco de dados:\n  - Prisma para integração com PostgreSQL/MySQL.\n  - MongoDB com Mongoose.\n\n#### Projetos Práticos\n\n- Projetos Práticos\n- Sistema de blog com SSR.\n- Dashboard integrado com banco de dados.\n- Aplicação de autenticação completa (Google, JWT).\n\n\u003c/details\u003e\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadrianobispo%2Fjavascript-learning-hub","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadrianobispo%2Fjavascript-learning-hub","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadrianobispo%2Fjavascript-learning-hub/lists"}