A NativeScript CollectionView For Custom aligned Layout Plugin.
npm install @nativescript-community/ui-collectionview-alignedflowlayout
A NativeScript CollectionView For Custom aligned Layout Plugin.
[](#table-of-contents)
* Installation
* Configuration
* Demos and Development
* Repo Setup
* Build
* Demos
* Contributing
* Update repo
* Update readme
* Update doc
* Publish
* modifying submodules
* Questions
[](#installation)
ns plugin add @nativescript-community/ui-collectionview-alignedflowlayout
[](#configuration)
To install the plugin run:
``typescript`
import install from '@nativescript-community/ui-collectionview-alignedflowlayout';
install();
then simply use the layoutStyle="align" as a collectionview propertylayoutHorizontalAlignment
You can then use (left, right, justified) and verticalHorizontalAlignment (top, bottom, center)
[](#demos-and-development)
The repo uses submodules. If you did not clone with --recursive then you need to call``
git submodule update --init
The package manager used to install and link dependencies must be pnpm or yarn. npm wont work.
To develop and test:
if you use yarn then run yarnpnpm
if you use then run pnpm i
Interactive Menu:
To start the interactive menu, run npm start (or yarn start or pnpm start). This will list all of the commonly used scripts.
`bash`
npm run build.allyarn build.all
WARNING: it seems wont always work (not finding binaries in node_modules/.bin) which is why the doc explicitly uses npm run
`bash
npm run demo.[ng|react|svelte|vue].[ios|android]
npm run demo.svelte.ios # Example
`
Demo setup is a bit special in the sense that if you want to modify/add demos you dont work directly in demo-[ng|react|svelte|vue]demo-snippets/[ng|react|svelte|vue]
Instead you work in install.ts
You can start from the of each flavor to see how to register new demos
[](#contributing)
You can update the repo files quite easily
First update the submodules
`bash`
npm run update
Then commit the changes
Then update common files
`bash`
npm run syncyarn|pnpm
Then you can run , commit changed files if any
bash
npm run readme
`$3
`bash
npm run doc
`$3
The publishing is completely handled by
lerna (you can add -- --bump major to force a major release)
Simply run
`shell
npm run publish
`$3
The repo uses https:// for submodules which means you won't be able to push directly into the submodules.
One easy solution is t modify
~/.gitconfig and add
`
[url "ssh://git@github.com/"]
pushInsteadOf = https://github.com/
``
[](#questions)
If you have any questions/issues/comments please feel free to create an issue or start a conversation in the NativeScript Community Discord.