A tool to help Granblue Fantasy players create and share teams and strategies.
Find a file
Justin Edmund d765b00120
Redesigned team navigation (#310)
* Add ellipsis icon

* Reduce size of tokens

* Move UpdateToast to toasts folder

* Update variables.scss

* Add reps for grid objects

These reps act like the existing PartyRep except for Characters and Summons, as well as a new component just for Weapons.

They only render the grid of objects and nothing else.

Eventually PartyRep will use WeaponRep

* Added RepSegment

This is a Character, Weapon or Summon rep wrapped with an input and label for use in a SegmentedControl

* Modify PartySegmentedControl to use RepSegments

This will not work on mobile yet, where it should gracefully degrade to a normal SegmentedControl with only text

* Extract URL copied and Remixed toasts into files

* Extract delete team alert into a file

Also, to support this:
* Added `Destructive` class to Button
* Added `primaryActionClassName` prop to Alert

* Added an alert for when remixing teams

* Began refactoring PartyDetails into several files

* PartyHeader will live at the top, above the new segmented control
* PartyDetails stays below, only showing remixed teams and the description
* PartyDropdown handles the new ... menu

* Remove duplicated code

This is description and remix code that is still in `PartyDetails`

* Small fixes for weapon grid

* Add placeholder image for guidebooks

* Add localizations

* Add Guidebook type and update other types

* Update gitignore

Don't commit guidebook images

* Indicate if a dialog is scrollable

We had broken paging in the infinite scroll component. Turning off "scrolling" at the dialog levels fixes it without adding scrollbars in environments that persistently show them

* Add ExtraContainer

This is the purple container that will contain additional weapons and sephira guidebooks

* Move ExtraWeapons to ExtraWeaponsGrid

And put it in ExtraContainer

* Added GuidebooksGrid and GuidebookUnit

These are the display components for Guidebooks in the WeaponGrid

* Visual adjustments to summon grid

* Add Empty class to weapons when unit is unfilled

* Implement GuidebooksGrid in WeaponGrid

* Remove extra switch

* Remove old dependencies and props

* Implement searching for/adding guidebooks to party

* Update styles

* Fix dependency

* Properly determine when extra container should display

* Change to 1-indexing for guidebooks

* Add support for removing guidebooks

* Display guidebook validation error

* Move read only buttons to PartyHeader

Also broke up tokens and made them easier to render

* Add guidebooks to DetailsObject

* Remove preview when on mobile sizes
2023-06-16 18:49:55 -07:00
.storybook Deploy organization and bug fixes (#299) 2023-04-12 06:37:41 -07:00
.vscode First commit 2020-09-11 06:44:42 -07:00
components Redesigned team navigation (#310) 2023-06-16 18:49:55 -07:00
data Push 2023/03 updates to main (#292) 2023-03-31 12:03:47 -07:00
hooks February 2023 Update (#158) 2023-02-04 23:46:24 -08:00
pages Deploy organization and bug fixes (#299) 2023-04-12 06:37:41 -07:00
public Redesigned team navigation (#310) 2023-06-16 18:49:55 -07:00
styles Redesigned team navigation (#310) 2023-06-16 18:49:55 -07:00
types Redesigned team navigation (#310) 2023-06-16 18:49:55 -07:00
utils Redesigned team navigation (#310) 2023-06-16 18:49:55 -07:00
.env.sample February 2023 Update (#158) 2023-02-04 23:46:24 -08:00
.eslintrc.json Deploy organization and bug fixes (#299) 2023-04-12 06:37:41 -07:00
.gitignore Add Nier and Estarriola uncaps (#308) 2023-06-08 12:19:39 -07:00
.prettierignore Add prettierignore 2022-12-04 07:18:59 -08:00
.prettierrc Remove trailing semicolons 2022-12-05 17:54:46 -08:00
next-env.d.ts Create next-env.d.ts 2022-01-24 18:44:11 -08:00
next-i18next.config.js Update next-i18next.config.js 2022-03-05 02:29:50 -08:00
next.config.js February 2023 Update (#158) 2023-02-04 23:46:24 -08:00
package-lock.json Deploy organization and bug fixes (#299) 2023-04-12 06:37:41 -07:00
package.json Deploy organization and bug fixes (#299) 2023-04-12 06:37:41 -07:00
README.md February 2023 Update (#158) 2023-02-04 23:46:24 -08:00
README.png February 2023 Update (#158) 2023-02-04 23:46:24 -08:00
tsconfig.json Migrate to Next.js 2022-01-24 21:54:50 -08:00
tslint.json Create tslint.json 2022-01-28 23:19:31 -08:00
yarn.lock Deploy organization and bug fixes (#299) 2023-04-12 06:37:41 -07:00

Header image for hensei-web

hensei-web

hensei-web is the frontend for granblue.team, an app for saving and sharing teams for Granblue Fantasy.

Getting Started

First, you have to set up your environment file. You should start with .env.sample, but here are some gotchas:

App URLs

Don't add a trailing slash to these URLs! The API will run on port 3000 by default, but make sure to change these to match your instance of the API.

NEXT_PUBLIC_SIERO_API_URL='http://127.0.0.1:3000/api/v1'
NEXT_PUBLIC_SIERO_OAUTH_URL='http://127.0.0.1:3000/oauth'

Asset URLs

Next.js serves all assets out of the /public directory. In development we utilize this for all assets, but in production, you will want to host these images on a cloud storage provider like Amazon S3. Once you have that set up and you're running in a production environment, change this to the full bucket URL.

NEXT_PUBLIC_SIERO_IMG_URL='/images'

Dependencies

Once your .env is all set up, install all dependencies:

npm install
# or
yarn install

Then, run the development server with:

npm run dev
# or
yarn dev

Assets

The hensei-api repository has tasks that will help you get assets, although some were crafted or renamed by hand. The front-end expects this folder structure inside of the images folder:

root
├─ accessory-grid/
├─ accessory-square/
├─ awakening/
├─ ax/
├─ chara-main/
├─ chara-grid/
├─ chara-square/
├─ jobs/
├─ job-icons/
├─ job-skills/
├─ mastery/
├─ summon-main/
├─ summon-grid/
├─ summon-square/
├─ updates/
├─ weapon-main/
├─ weapon-grid/
├─ weapon-square/