Skip to content

Automated GitHub Organization Members Listing šŸš€ - Displays a dynamic list of all organization members, including private profiles, and keeps it updated with GitHub Actions and GitHub Pages.

License

Notifications You must be signed in to change notification settings

Artificial-Universe/team-organization-page

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Ā 

History

48 Commits
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 
Ā 

Repository files navigation

šŸš€ Team Organization Page

šŸ‘‹ Bem-vindo ao repositório oficial da pĆ”gina de listagem de membros da organização Artificial-Universe! Este projeto tem como objetivo criar uma interface dinĆ¢mica e automatizada que exibe todos os membros da organização, incluindo aqueles com perfis privados, garantindo que a pĆ”gina seja atualizada automaticamente sempre que um novo membro for adicionado.

🌟 Funcionalidade

Este repositório foi desenvolvido para fornecer uma visualização pública de todos os membros da organização Artificial-Universe. Aqui estão algumas das principais funcionalidades do projeto:

  • šŸ”„ Atualização AutomĆ”tica: A pĆ”gina de membros Ć© atualizada diariamente Ć  meia-noite (UTC) usando GitHub Actions. Sempre que um novo membro ingressa na organização, a listagem serĆ” atualizada automaticamente.
  • šŸ‘¤ Suporte para Membros PĆŗblicos e Privados: Todos os membros sĆ£o exibidos, independentemente do status de visibilidade dos seus perfis.
  • šŸ“œ Interface Simples e Intuitiva: A pĆ”gina oferece uma tabela limpa e bem organizada com os nomes e as Ć”reas de atuação (que podem ser definidas no futuro) de cada membro.

šŸŽÆ Objetivo

O objetivo deste repositório é facilitar o acompanhamento e visualização dos membros da organização, com atualizações automÔticas para garantir que sempre exibamos os membros mais recentes. Este projeto faz parte de uma integração maior com o GitHub Projects da organização Artificial-Universe, sendo uma interface que pode ser usada para exibir a lista de participantes em outros módulos do projeto.

🧩 Integração com o GitHub Projects

Este repositório serÔ integrado ao GitHub Projects como parte do gerenciamento de membros e seus papéis dentro do projeto. A interface servirÔ como um recurso de monitoramento, permitindo que os administradores e colaboradores acompanhem quem estÔ envolvido nas diferentes atividades da organização.

  • Os dados dos membros serĆ£o automaticamente atualizados e poderĆ£o ser usados em outras Ć”reas do GitHub Projects, como tarefas atribuĆ­das, progressos, e discussƵes.
  • Futuramente, serĆ” possĆ­vel associar os membros a seus respectivos papĆ©is em projetos especĆ­ficos da organização, ajudando a organizar melhor as equipes de desenvolvimento.

šŸ›  Tecnologias Utilizadas

Este projeto foi desenvolvido utilizando as seguintes tecnologias:

  • Node.js: Utilizado para criar scripts automatizados que acessam a API do GitHub e geram a listagem de membros.
  • GitHub API: A API do GitHub Ć© utilizada para buscar os membros da organização e suas informaƧƵes.
  • GitHub Actions: Automação que executa diariamente a atualização dos membros da organização e gera o arquivo team-members.json usado na pĆ”gina.
  • HTML/CSS: A interface Ć© construĆ­da usando uma pĆ”gina HTML simples, estilizada com CSS para exibir os membros em uma tabela limpa e organizada.
  • JSON: Os dados dos membros sĆ£o salvos em um arquivo team-members.json, que alimenta a interface.

šŸ›  Como Funciona

  1. Atualização DiÔria: Através de um workflow do GitHub Actions, o script script.js é executado todos os dias à meia-noite (UTC), fazendo uma chamada à API do GitHub para buscar os membros da organização.
  2. Listagem dos Membros: Todos os membros da organização são coletados, incluindo aqueles com perfis privados, e são salvos no arquivo team-members.json.
  3. Exibição na PÔgina: A pÔgina HTML consome os dados do arquivo team-members.json e exibe os membros em uma tabela na pÔgina web.

šŸš€ Para Executar Localmente

Se você deseja rodar este projeto localmente, siga as instruções abaixo:

  1. Clone o Repositório:

    git clone https://github.com/Artificial-Universe/team-organization-page.git
    cd team-organization-page
  2. Instale as Dependências: Certifique-se de que você tem o Node.js instalado. Então, rode:

    npm install
  3. Defina o Token do GitHub: Crie um arquivo .env na raiz do projeto e adicione seu GITHUB_TOKEN:

    GITHUB_TOKEN=your_github_token
  4. Execute o Script: Para listar manualmente os membros da organização:

    npm start
  5. Visualize a PƔgina: Abra o arquivo index.html no seu navegador favorito para visualizar a tabela de membros.

šŸ”„ Automatização com GitHub Actions

  • Este projeto utiliza o GitHub Actions para automação da coleta de dados. A cada novo membro adicionado Ć  organização, o workflow abaixo serĆ” acionado para atualizar a lista de membros:

    name: List Organization Members
on:
  workflow_dispatch:
  schedule:
    - cron: '0 0 * * *' # Executa o workflow todos os dias Ć  meia-noite UTC

jobs:
  list-members:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v2

      - name: Setup Node.js
        uses: actions/setup-node@v2
        with:
          node-version: '14'

      - name: Install dependencies
        run: npm install

      - name: List Members
        run: |
          node script.js
        env:
          GITHUB_TOKEN: ${{ secrets.TOKEN_GITHUB }}

šŸ“š ContribuiƧƵes

Estamos sempre abertos a novas ideias e contribuições! Se você deseja sugerir melhorias ou adicionar novas funcionalidades, fique à vontade para abrir uma issue ou enviar um pull request.

Como Contribuir

  1. FaƧa um Fork do projeto.

  2. Crie uma nova branch com sua funcionalidade ou correção:

git checkout -b minha-nova-feature
  1. Commit suas alteraƧƵes:
git commit -m 'Adicionando minha nova feature'
  1. Push para a branch:
git push origin minha-nova-feature
  1. Abra um Pull Request.

šŸŽ‰ Agradecimentos

Agradecemos a todos os membros da organização Artificial-Universe que estĆ£o contribuindo ativamente para o desenvolvimento deste projeto. Vamos continuar evoluindo juntos! šŸ’ŖšŸŒŒ

About

Automated GitHub Organization Members Listing šŸš€ - Displays a dynamic list of all organization members, including private profiles, and keeps it updated with GitHub Actions and GitHub Pages.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Contributors 2

  •  
  •