Skip to content

Pokedex with Java tech to fulfill some requirements

License

Notifications You must be signed in to change notification settings

mangila/pokedex-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

543 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java Apache Maven Terraform AWS Python

pokedex-java

Low-level Java implementation that consumes data from https://pokeapi.co/, saves it to disk and serves it via HTTP.

For more information, please see /docs (wip)

Project Goal

  • Implement and pinpoint software engineering principles and techniques
  • Build software components from scratch
  • For the sake of fun and love for programming, technologies and Pokémon

Development Environment

  • Java 21+
  • Python3 installed on the system (for pre-commit hooks)
  • cwebp installed on the system (when converting images to webp)
  • terraform installed on the system (for infrastructure as code)

Software Components (WIP)

  • Http Client
    • HTTP/1.1
    • Connection Pool
    • SSL/TLS
  • Json Parser
  • TTL Time To Live Cache
  • LRU Last Recently Used Cache
  • Scheduler
  • Internal Queue Service
  • HTTP Server
    • Serve RESTful JSON
    • Serve media files
    • HTTP/1.1
  • Database
    • MultiMap database
    • WAL file system
    • Memory mapped file system
    • Bloom filter
    • (WIP)

Contributing

This project is for educational purposes. Feel free to fork and extend it.

License

This project is open-source and available under the MIT License.

This project is independent work and has no affiliation with https://pokeapi.co/ or The Pokémon Company.

About

Pokedex with Java tech to fulfill some requirements

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages