An open API service indexing awesome lists of open source software.

https://github.com/sujalxplores/pixel-nation

Create vibrant pixel-art maps of countries using customizable dot patterns. Built with Next.js 14 and Tailwind CSS.
https://github.com/sujalxplores/pixel-nation

dataviz geography interactivemap nextjs14 pixelart

Last synced: 4 months ago
JSON representation

Create vibrant pixel-art maps of countries using customizable dot patterns. Built with Next.js 14 and Tailwind CSS.

Awesome Lists containing this project

README

          

# Pixel Nation Generator

A Next.js application that generates pixel-art style maps of countries using dot patterns.

![Pixel Nation Generator Demo](https://placehold.co/800x400/3B82F6/FFFFFF.gif?text=Pixel+Nation+Generator&font=raleway)

## 🚀 Features

- ⚡ **Next.js 14** - For fast, server-side rendering and static site generation
- 🎨 **Tailwind CSS** - A utility-first CSS framework for rapid UI development
- 📏 **ESLint** - Pluggable JavaScript linter
- 🐶 **Husky** - Use git hooks with ease
- 🌍 **TopoJSON** - For handling geographical data
- 🎨 **react-colorful** - A tiny color picker component for React
- 🔍 **Combobox** - For easy country selection

## 🛠 Getting Started

1. Clone the repository:
```bash
git clone https://github.com/your-username/pixel-nation-generator.git
cd pixel-nation-generator
```

2. Install dependencies:
```bash
npm install
```

3. Run the development server:
```bash
npm run dev
```

4. Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.

## 📁 Project Structure

```
├── app/
│ ├── layout.js
│ ├��─ page.js
│ └── globals.css
├── components/
│ └── ui/
├── lib/
├── public/
├── .husky/
├── .vscode/
└── [Configuration files]
```

## 🎯 Key Features in Action

### 1. Country Selection with Combobox

![Country Selection Demo](https://placehold.co/800x400/22C55E/FFFFFF.gif?text=Country+Selection&font=raleway)

Use the combobox to easily search and select countries from a comprehensive list.

### 2. Customizable Dot Patterns

![Dot Customization Demo](https://placehold.co/800x400/EAB308/FFFFFF.gif?text=Dot+Customization&font=raleway)

Adjust dot size and color to create unique pixel-art representations of countries.

### 3. Real-time Preview

![Real-time Preview Demo](https://placehold.co/800x400/EC4899/FFFFFF.gif?text=Real-time+Preview&font=raleway)

See your changes instantly reflected in the country map preview.

## 🔧 Configuration

### ESLint

The project uses a custom ESLint configuration. You can find and modify the rules in `.eslintrc.json`.

### Tailwind CSS

Tailwind is configured in `tailwind.config.js`. You can extend the default configuration here.

## 📚 Learn More

To learn more about the technologies used in this project, check out the following resources:

- [Next.js Documentation](https://nextjs.org/docs)
- [Tailwind CSS Documentation](https://tailwindcss.com/docs)
- [TopoJSON Documentation](https://github.com/topojson/topojson)
- [react-colorful Documentation](https://github.com/omgovich/react-colorful)

## 🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

## 📄 License

This project is open source and available under the [MIT License](LICENSE).