Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/caduzulian/portfolio-v1
Portfolio developed in NextJs with direct integration to the Github API
https://github.com/caduzulian/portfolio-v1
emailjs framer-motion internacionalization nextjs project-image reactjs sass typescript
Last synced: about 9 hours ago
JSON representation
Portfolio developed in NextJs with direct integration to the Github API
- Host: GitHub
- URL: https://github.com/caduzulian/portfolio-v1
- Owner: CaduZulian
- Created: 2023-05-06T21:02:21.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-01-30T19:25:34.000Z (10 months ago)
- Last Synced: 2024-01-31T19:49:55.380Z (10 months ago)
- Topics: emailjs, framer-motion, internacionalization, nextjs, project-image, reactjs, sass, typescript
- Language: TypeScript
- Homepage: https://caduzulian.dev
- Size: 3.04 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Portfolio-V1
Portfolio desenvolvido em 2023, com responsividade, internacionalização nativa e
integração com o github, construído de forma dinâmica, para que seja possível
reutilizá-lo sem grandes mudanças
> Para ver a interface no figma, [clique aqui](https://www.figma.com/file/Xr6P9nuBTebM5XwTx7ibHP/Portfolio-meu?type=design&node-id=292%3A98&t=oaY8kE4cpKYlQT0M-1)
## Ferramentas utilizadas
- **[NextJS](https://nextjs.org/)**
- **[ReactJS](https://react.dev/)**
- **[TypeScript](https://www.typescriptlang.org/)**
- **[SASS](https://sass-lang.com/)**
- **[Framer-motion](https://www.framer.com/motion/)**> Veja o arquivo [package.json](https://github.com/CaduZulian/Portfolio-V1/blob/main/package.json)
## Variáveis de ambiente
Para que seja possível rodar o projeto, é necessário inserir em um arquivo
`.env` as variáveis de ambiente. Essas variáveis são:- `NEXT_PUBLIC_EMAIL`
- `NEXT_PUBLIC_GITHUB_USERNAME`\*
- `GA_TRACKING_ID`
- `NEXT_PUBLIC_EMAILJS_SERVICE_ID`
- `NEXT_PUBLIC_EMAILJS_TEMPLATE_ID`
- `NEXT_PUBLIC_EMAILJS_PUBLIC_KEY`
- `NEXT_PUBLIC_CV_URL`
- `NEXT_PUBLIC_GITHUB_URL`
- `NEXT_PUBLIC_LINKEDIN_URL`
- `NEXT_PUBLIC_INSTAGRAM_URL`> \*Obrigatória
## Internacionalização
A parte de internacionalização está separada em 3 partes dentro do projeto:
- [translations.ts](src\app\constants\translations.ts) - Onde devem ser armazenados todos os textos a serem exibidos dependendo da lingua selecionada
- [languages.ts](src\app\constants\languages.ts) - Onde devem ser adicionadas as linguas suportadas, juntamente com a importação do seu respectivo icone
- [TranslateContext](src\app\context\TranslateContext) - Onde é realizada a seleção dos textos para a lingua selecionada e o compartilhamento para todo o projetoA parte de Carreira também possui internacionalização, mas fica armazenada em outro local e é explicado abaixo
## Carreira
A parte de carreira está armazenada em um arquivo [carrer.ts](src\app\constants\carrer.ts) na pasta de constantes.
Essa parte também possui internacionalização, funcionando de forma muito semelhante ao resto do sistema nesse quesito
Para realizar qualquer atualização nessa aba, basta atualizar o JSON, alterando em todas as linguas disponíveis
## Rodando o projeto (desenvolvimento)
```bash
# Clone este repositório$ git clone https://github.com/CaduZulian/Portfolio-V1.git
# Acesse a pasta do projeto no terminal/cmd
$ cd Portfolio-V1
# Instale as dependências
$ yarn install
# Execute a aplicação
$ yarn dev
# O cliente iniciará na porta: 3000 - acesse http://localhost:3000
```## Rodando o projeto (produção)
```bash
# Clone este repositório$ git clone https://github.com/CaduZulian/Portfolio-V1.git
# Acesse a pasta do projeto no terminal/cmd
$ cd Portfolio-V1
# Instale as dependências
$ yarn install
# Realize o build da aplicação
$ yarn build
# Execute a aplicação
$ yarn start
# O cliente iniciará na porta: 3000 - acesse http://localhost:3000
```## TODO's
Para a primeira versão, ficou faltando um bloco de informações voltado as skills.
Uma possível atualização seria adicionar esse bloco## Desenvolvedores