Skip to content

mauriciospark/kernel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kernel — (Linhagem SPARK)

Descrição

Kernel é um sistema de gerenciamento de biblioteca digital especializado em livros de Tecnologia da Informação. A plataforma permite organizar, categorizar e acompanhar o progresso de leitura de livros técnicos, oferecendo uma interface moderna e intuitiva para profissionais e entusiastas da área. O sistema resolve o problema de desorganização e falta de controle sobre acervos digitais, proporcionando uma experiência centralizada para gerenciar materiais de estudo e referência técnica.

Stack

Frontend

  • HTML5 - Estrutura semântica das páginas
  • CSS3 - Estilização moderna com variáveis CSS e design responsivo
  • JavaScript (Vanilla) - Lógica de interação e manipulação do DOM
  • PWA Features - Suporte a Progressive Web App com manifest e favicons

Backend

  • C# (.NET) - Linguagem principal de desenvolvimento
  • ASP.NET Core - Framework para construção de APIs REST
  • Entity Framework Core - ORM para acesso a dados e mapeamento objeto-relacional

Banco de Dados

  • SQLite - Banco de dados leve e local (Local-First architecture)
  • Entity Framework Core SQLite - Provider para persistência de dados

Bibliotecas e Ferramentas

  • Microsoft.EntityFrameworkCore - ORM para manipulação de dados
  • Microsoft.EntityFrameworkCore.Sqlite - Provider SQLite para EF Core
  • .NET 8.0 - Framework runtime e SDK

Funcionalidades

  • Gerenciamento de Livros: Cadastro, edição e exclusão de livros técnicos com metadados completos (título, autor, ISBN, editora, descrição)
  • Categorização por Áreas: Organização em múltiplas categorias de TI (Programação, Redes, Infraestrutura, Segurança, Design, etc.)
  • Acompanhamento de Progresso: Registro de páginas lidas, cálculo automático de porcentagem de conclusão e tracking de datas de início e fim
  • Filtragem Dinâmica: Filtragem de livros por área de conhecimento com interface intuitiva
  • Interface Responsiva: Design adaptável para diferentes dispositivos e tamanhos de tela
  • Local-First Architecture: Dados armazenados localmente com privacidade e acesso offline
  • Sistema de Busca: Localização rápida de livros por título, autor ou categoria
  • Visualização de Capas: Suporte a imagens de capa com fallback para placeholders
  • API REST: Endpoints para integração e manipulação programática dos dados

Como Rodar

Pré-requisitos

  • .NET 8.0 SDK instalado
  • Navegador web moderno (Chrome, Firefox, Edge, Safari)
  • Editor de código (Visual Studio, VS Code, ou similar)

Passo a Passo

  1. Clonar o repositório

    git clone https://github.com/mauriciospark/kernel.git
    cd kernel
  2. Restaurar dependências do projeto C#

    cd CSharp
    dotnet restore
  3. Executar o backend (API)

    dotnet run

    A API estará disponível em http://localhost:5000

  4. Abrir o frontend

    • Abra o arquivo index.html diretamente no navegador
    • Ou use um servidor local para desenvolvimento:
      # Usando Python
      python -m http.server 8000
      
      # Usando Node.js (http-server)
      npx http-server -p 8000
    • Acesse http://localhost:8000
  5. Primeiro uso

    • O banco de dados SQLite será criado automaticamente na primeira execução
    • Categorias pré-configuradas serão inseridas automaticamente
    • Livros de exemplo estarão disponíveis para teste

Estrutura de Diretórios

kernel/
├── index.html          # Página principal
├── css/
│   └── style.css      # Estilos da aplicação
├── js/
│   └── script.js      # Lógica frontend
├── CSharp/            # Projeto backend .NET
│   ├── Core/          # Entidades e interfaces
│   ├── Infrastructure/ # Repositórios e contexto de dados
│   └── API/           # Controllers e endpoints
├── livros/            # Arquivos PDF dos livros
├── docs/              # Documentação do projeto
└── favicon/           # Ícones e assets PWA

Desenvolvimento

Para desenvolvimento ativo, recomenda-se:

  • Usar VS Code com extensões C# e Live Server
  • Executar backend em modo watch: dotnet watch run
  • Usar ferramentas de desenvolvimento do navegador para debugging JavaScript

About

Sistema Local-First (Zero-Server) para gestão e catálogo inteligente de acervos digitais e livros técnicos de TI. Desenvolvido com .NET C# (Minimal APIs) e SQLite embarcado.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors