- Crie um projeto API .NET Core 10 vazio.
- Utilize um arquitetura simples, apenas com camada repository, services, DTOs e Controller.
- Utilize DTOS para receber dados para API e para retornar os dados da API.
- Os DTOS devem ser especializados por response e request.
- Utilize a OPENAPI com Scalar para documentar a API
- Como banco de dados, utilize o SQLite para persistência de dados. 
- Utilize ADO.NET puro e não EntityFramework.
- Criar camada "Repository".
- Não implementar autenticação e autorização


--- 
/init
Crie .github/copilot-instructions.md deste projeto (curto e factual).
O projeto consiste numa API para gerenciar 
dados de alunos de uma escola de informática.

---------
instalar o sdd

PS C:\Temp\aula1> specify init --here

/speckit.constitution
-----

- Crie um controller AlunosController para operações básica de um CRUD.
- A entidade aluno tem Id, Nome, Data de Nascimento e CPF.
- o CPF deverá ser validado.
- Gera a tabela no banco de dados da aplicação.
- o CPF não deverá ser validado.


Estória:
Como usuário quero gerenciar os professores da escola para maior controle.

Detalhes:
Um professor tem um Id, Nome, Data de Contratação.

Critérios de aceitação:
- O novo do professor deverá ser único. Não pode existe professores com o mesmo nome.




# Documentação Funcional em `/docs`
Toda demanda DEVE manter a documentação da funcionalidade atualizada.- Considerar `/docs` como a fonte principal de documentação funcional do projeto.- Procurar primeiro por uma pasta já existente para a funcionalidade antes de criar nova documentação.- Preferir o padrão `/docs/README.md`.- DEVE manter a documentação funcional ser escrito em português do Brasil (PT-BR),- Descrever a funcionalidade do ponto de vista de negócio.- Omitir detalhes de programação muito específico. Mas citar, quando facilitar a compreensão do fluxo.- Ao criar ou atualizar documentação, DEVE seguir preferencialmente a estrutura definida em `/docs/template.md`.- Quando a solicitação for apenas de análise, consultar a documentação em `/docs` antes de responder e apontar inconsistências entre documentação e código, se existirem.- Quando a solicitação envolver nova funcionalidade, incluir a criação da documentação como parte da entrega padrão.- Quando a solicitação envolver manutenção, ajustar a documentação existente na mesma alteração sempre que houver mudança funcional.   