From 9a831017afdf294a9bfaed81f579cd01d879d110 Mon Sep 17 00:00:00 2001 From: Guilherme Eduardo <gegs23@inf.ufpr.br> Date: Mon, 9 Sep 2024 09:50:09 -0300 Subject: [PATCH] issue #6: ADD readme and env.example file --- .env.example | 7 +++++ .tmp/data.db | Bin 729088 -> 729088 bytes README.md | 78 ++++++++++++++++++++++++--------------------------- 3 files changed, 44 insertions(+), 41 deletions(-) create mode 100644 .env.example diff --git a/.env.example b/.env.example new file mode 100644 index 000000000..ebfc96a35 --- /dev/null +++ b/.env.example @@ -0,0 +1,7 @@ +HOST=0.0.0.0 +PORT=1337 +APP_KEYS="toBeModified1,toBeModified2" +API_TOKEN_SALT=tobemodified +ADMIN_JWT_SECRET=tobemodified +TRANSFER_TOKEN_SALT=tobemodified +JWT_SECRET=tobemodified diff --git a/.tmp/data.db b/.tmp/data.db index b7a1af570ca61e92eb3f06cd9b906ba79c280c87..6efc24765b7f6aef0f14326a05d87d16865d9426 100644 GIT binary patch delta 4924 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 delta 208 zcmZoTpwn<bXM!{%-$WT_M!t;+Pvx2K@N{n8nBd4Wxl_kif|D^ZB{!4XjainXpeR2p zwIsh-QGwZ&Y5K-FY%-g<bRRG>ax}lzYk#fBxc#*rljOzaEDnqY+gS{lubgK&<m5A@ z{my^p_B;Ps+VA{l-G1jkn})%1mH<Y9<tz^D0h?I_{_t;Gz|JDDoyCFikN&m??2HEd z3=9mcOkxad-<Ug?)-yG27ZBjM#yB}a!C<<W5JwK1wm3V3qv-TEf*f+~%Y-=EmkDvU OFB9V0zD$TaiWdMs0Yo$a diff --git a/README.md b/README.md index 931729f1f..4e3f2fa4d 100644 --- a/README.md +++ b/README.md @@ -1,61 +1,57 @@ -# 🚀 Getting started with Strapi -Strapi comes with a full featured [Command Line Interface](https://docs.strapi.io/dev-docs/cli) (CLI) which lets you scaffold and manage your project in seconds. +# Configurando e Executando o Strapi CMS -### `develop` +Este guia descreve como configurar e executar o Strapi Headless CMS, que será utilizado para gerenciar postagens de conteúdo no site do C3SL. -Start your Strapi application with autoReload enabled. [Learn more](https://docs.strapi.io/dev-docs/cli#strapi-develop) +## Requisitos +- Node.js v20.16.0. +- npm (gerenciador de pacotes do Node.js). -``` -npm run develop -# or -yarn develop -``` +## Instalação -### `start` +### Clonando o repositório do Strapi: -Start your Strapi application with autoReload disabled. [Learn more](https://docs.strapi.io/dev-docs/cli#strapi-start) +Primeiro, clone o repositório oficial do Strapi no GitHub: + ```git clone git@github.com:strapi/strapi.git``` -``` -npm run start -# or -yarn start -``` -### `build` +### Criando um novo projeto strapi -Build your admin panel. [Learn more](https://docs.strapi.io/dev-docs/cli#strapi-build) +Após clonar o repositório, você pode criar um novo projeto Strapi com o seguinte comando: -``` -npm run build -# or -yarn build -``` +```npx create-strapi-app <nome_do_projeto> --quickstart``` -## ⚙️ Deployment +### Executando o Strapi -Strapi gives you many possible deployment options for your project including [Strapi Cloud](https://cloud.strapi.io). Browse the [deployment section of the documentation](https://docs.strapi.io/dev-docs/deployment) to find the best solution for your use case. +Depois que a instalação estiver completa e o projeto criado, você pode iniciar o servidor Strapi com o comando: +```npm run develop ``` -``` -yarn strapi deploy -``` +Isso fará com que o servidor Strapi seja executado na porta 1337. Agora, você pode acessar o painel de administração do Strapi em: +```http://localhost:1337/admin ``` -## 📚 Learn more +Na primeira vez que você acessar o painel de administração, será solicitado que você configure um e-mail e uma senha para criar o usuário administrador. Este procedimento é necessário para garantir a segurança e permitir que você gerencie e controle o conteúdo do site. O usuário administrador terá privilégios para criar, editar, publicar e gerenciar todo o conteúdo e configurações do Strapi. -- [Resource center](https://strapi.io/resource-center) - Strapi resource center. -- [Strapi documentation](https://docs.strapi.io) - Official Strapi documentation. -- [Strapi tutorials](https://strapi.io/tutorials) - List of tutorials made by the core team and the community. -- [Strapi blog](https://strapi.io/blog) - Official Strapi blog containing articles made by the Strapi team and the community. -- [Changelog](https://strapi.io/changelog) - Find out about the Strapi product updates, new features and general improvements. +## Configuração do Conteúdo -Feel free to check out the [Strapi GitHub repository](https://github.com/strapi/strapi). Your feedback and contributions are welcome! +### Collection Type -## ✨ Community +Collection Type é uma estrutura que podemos criar no strapi para armazenar algum tipo de conteúdo específico. Ex: uma notícia, o qual podemos configurar campos como: Titulo, Descrição, data, autor e imagens. Dessa forma, podemos obter uma estrutura, o qual usaremos futuramente para uma publicação. + +Essa estrutura poderá ser criada em content type builder e selecionar as opções conforme interesse. -- [Discord](https://discord.strapi.io) - Come chat with the Strapi community including the core team. -- [Forum](https://forum.strapi.io/) - Place to discuss, ask questions and find answers, show your Strapi project and get feedback or just talk with other Community members. -- [Awesome Strapi](https://github.com/strapi/awesome-strapi) - A curated list of awesome things related to Strapi. +### Single Types ---- +As Single Types são informações que podemos armazenar em uma única pagina (uma página simples), o qual o conteúdo não sofre alterações e podemos manté-las estáticas. Aleḿ disso, podem ser criadas na aba content-type builder. -<sub>🤫 Psst! [Strapi is hiring](https://strapi.io/careers).</sub> +## Acessando os dados no Strapi: + +Podemos acessar os dados armazenados no strapi por meio da interface gráfica ou por arquivos .JSON. +Para visualizar via interface gráfica, basta apenas acessar a aba content manager e verificar. Para conseguir visualizar via JSON, podemos acessar a URL: + +```http://localhost:1337/api/posts/<id_da_noticia>?populate=* ``` + +## Webhooks + +Strapi permite configurar webhooks para enviar notificações a outros serviços quando eventos específicos ocorrem (como a publicação, atualização e remoção de algum tipo de conteúdo). Assim que é enviado uma requisição para a porta configurada no webhooks (Porta 5000), um script realizado em python recebe essa requisição e as informações sobre o conteúdo, dessa forma, consegue converter os dados do conteúdo em arquivos markdown e envia para a pasta content/noticia do framework Hugo para a futura pulicação do conteúdo. Para configurar um webhook: + +No painel de administração, vá para: Settings > Webhooks. Clique em Create New Webhook. Preencha os detalhes como URL e com os eventos selecionados e clique em Save. -- GitLab