2021-07-07 12:40:37 +02:00
# Pokémon Couture
2021-06-28 11:14:14 +02:00
2021-10-20 15:58:20 +02:00
A work-in-progress Phoenix app for tracking clothes acquisition in Pokémon Sun & Moon. Only supports female clothes for now.
2021-09-27 17:36:45 +02:00
2021-10-20 15:54:18 +02:00
I run a public version of the site at: https://couture.pikachu.rocks/
2021-10-19 17:39:50 +02:00
2021-09-27 17:36:45 +02:00
Currently, you need to have an account on the site to be able to use the tracker.
2021-10-13 14:09:50 +02:00
Also, there is no e-mail server connected, so e-mails are not verified,
and password resets and e-mail changes have to be done by contacting the admin.
2021-10-20 15:54:18 +02:00
## Installation
2021-10-19 17:39:50 +02:00
Here is how to spin up your own Pokémon Couture Instance.
2021-10-20 16:02:05 +02:00
1. Make sure you have [Elixir ](https://elixir-lang.org/install.html ),
[Phoenix ](https://hexdocs.pm/phoenix/installation.html ),
and a database like [PostgreSQL ](https://wiki.postgresql.org/wiki/Detailed_installation_guides ) installed.
You will also need `npm` . Also make sure that you have a C compiler and `make` .
2021-10-19 17:39:50 +02:00
2. Clone this git repository.
3. In the repository folder, run `mix deps.get`
2021-10-20 16:02:05 +02:00
At this point the setup is good enough for local testing.
You can run `mix ecto setup` , then `iex -S mix phx.server` to get the server running.
Go to `localhost:4000` to see the page in action.
2021-10-19 18:06:24 +02:00
### Running in prod
2021-10-20 15:58:20 +02:00
To run the application in prod, you need to set a few environment variables, and run a few more commands.
2021-10-20 15:54:18 +02:00
#### Environment variables
2021-10-20 16:02:05 +02:00
- `MIX_ENV=prod`
2021-10-20 15:54:18 +02:00
- `SECRET_KEY_BASE` for your secret. You can generate one with `mix phx.gen.secret` .
- `DATABASE_URL` in the format of `ecto://USER:PASS@HOST/database` to connect to your database.
- `PORT` for your app port. (usually 4000 or 4001)
2021-10-20 15:58:20 +02:00
##### Optional:
2021-10-20 15:54:18 +02:00
- `SENTRY_DSN` for your Sentry DSN if you're planning to track errors with Sentry.
#### Preparing prod
2021-10-20 15:58:20 +02:00
All of those commands are assuming you set the environment variables above.
2021-10-20 15:54:18 +02:00
1. Run `npm install` in the `assets` subfolder, then run `npm run deploy --prefix ./assets` in the project root folder.
2. Run `mix phx.digest` in the project root folder.
3. Run `mix ecto.setup` to set up the database (and seed it).
Now you can run the server. `mix phx.server` (or `elixir --erl "-detached" -S mix phx.server` for detached mode).
2021-10-20 16:02:05 +02:00
You may also want to set up something like Caddy or nginx as a reverse proxy.
2021-10-19 17:39:50 +02:00
## License and attributions
`assets/static/images/pikachu.png` is a [pikachu icon by WEBTECHOPS LLP from the Noun Project ](https://thenounproject.com/term/pokemon/2122740/ ), licensed as Creative Commons CCBY.
2021-10-21 13:31:36 +02:00
2021-10-21 13:30:56 +02:00
The source code is licensed under [AGPL ](LICENSE.md ).
2021-10-13 14:09:50 +02:00
## Possible future improvements
While the app is currently in a state that works, there are some improvements I would like to make for it later down the line.
Some of those are:
- Support for male clothes
- Support for the few extra items from Ultra Sun and Ultra Moon
2021-10-20 15:58:20 +02:00
- Check the list against a real Pokémon Sun game (I only checked with my own Pokémon Moon cartridge.)
2021-10-13 14:09:50 +02:00
- A version of the tracker that works without an account
- A transfer feature that allows to copy that progress upon account creation
- Working e-mail verification
- Better look for the tracker page
- Display clothes in a more organized manner
- Sort clothes the same way the game does it
2021-10-20 16:02:05 +02:00
2021-10-13 14:16:17 +02:00
## Other clothing masterlists - inacuraccies
2021-09-27 17:36:45 +02:00
My app has adapted the following masterlists, however, when checking in the
actual Pokémon Moon game, I found several inacuraccies:
- https://samurai-gamers.com/pokemon-sun-and-moon/apparel-items-list/ is missing an entire shop.
Some pieces list wrong colors, or misattribute gender.
- https://www.serebii.net/sunmoon/customisation.shtml is incomplete.
- https://bulbapedia.bulbagarden.net/wiki/Fashion_item seems to be accurate.