Git Product home page Git Product logo

usable-tools's Introduction

USABLE

Repository to track news and resources from the USABLE initiative; learn more at https://usable.tools

Editing content

Content contained in the content directory as markdown files. Each file should have a .md extension. With Hugo installed, you can add content through the command line: hugo new content/[SECTION]/[FILENAME].md.

Paths will be constructed using the section's directory within content and the name given to the markdown file. So a markdown file in content/events/my-awesome-event.md will have this URL https://usable.tools/events/my-awesome-event, so he last fragment of the path will match the filename but without the .md extension.

Drafts are set to true by default. If content doesn't appear after adding the markdown file inside the content directory, check to make sure that draft is set to false with draft: false.

Blog content is published within the content/blog directory. There is an example unpublished blog content at content/blog/blog-example.md.

Events are published within the content/events directory. Note: the eventdate font matter field should be filled in so the sort on the events page will display most recent events on top. There is an unpublished example event content content/events/event-example.md.

Personas are published within the content/personas directory. There is an example unpublished personal content content/personas/persona-example.md.

Pages can be published within the top level of the content directory. For example the about page https://usable.tools/about is published at content/about.md.

Images and Files To add an image to content, first place it in the static/images directory. Hugo will copy any files in static to the published site. For example an image path would be images/[FILENAME].png.

To add a PDF to content, place it in the static/pdfs directory. For example a path to a PDF should be pdfs/[FILENAME].pdf.

Anything added to the static directory will be available to the published site.

Publishing content / Deploying changes

To publish or edit content first install Hugo. Then run the command hugo server in a terminal from the root of the source branch. This will provide a link to view the site.

Any changes pushed to the source branch will automatically build the site and deploy changes to the live site.

Updating Home Page

Home page carousel content is published within the content/front_carousel directory. The full text of this content is displayed on the front page. HTML can be included in these, such as the orange USABLE text within the the h2 tag with: <span class="orange">USABLE</span>.

The link_path field is required for the slide to be displayed. If the value for this is empty than the entire slide will not be visible on the front page.

The link_text field is optional. If not defined, it defaults to "Read more."

The weight property controls the order of front page items.

If you would like to unpublish any front carousel content, the draft property can be set to false with draft: false.

This content type doesn't require the title value. If title is defined in front_carousel content, it will not be visible anywhere.

Intro on front page can be edited in data/intro.json. It has a title and description.

Personas block on front page can be edited in data/personas.json.

Configuration

Configuration is stored in config.toml. This file contains various Hugo settings as well as site wide values such as the name of the site. The contact information, social media links, twitter card data and OG data are also defined in this file.

Main menu: Menu items can be added in the configuration file config.toml.

baseURL The base baseURL in config.toml will need to be changed to baseURL = "http://usable.tools/" before switching to this domain. The trailing / is required for the site to render correctly.

Using Hugo

The following commands should be ran from the top level of the source files (within the same directory as config.toml).

To build the static files run hugo.

To preview the website locally run hugo server.

Compiling SASS

To update SASS files, run npm run sass in a terminal and commit the updated CSS files.

usable-tools's People

Contributors

intadri avatar joncamfield avatar megdeb avatar squiggyrubio avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

usable-tools's Issues

Soft Launch and Launch Prep

Soft Launch

  • Move to dev.usable.tools (cloudflare) and update github and config.toml (DONE)
  • Identify and fix any remaining must-haves for going live with site

Launch

  • Identify and fix all Launch-milestone issues
  • Move to usable.tools (cloudflare), and update github and config.toml
  • Move old site to old.usable.tools, update github

Persona Filter Wishlist

  • show filtered total (current) number of personas ( https://stackoverflow.com/questions/43883215/listjs-count-item-after-search
  • add filters/dropdown select options for gender, region, country?
  • Add synonyms for gender (or hardcode it) add nonbinary?) -- e.g. "female" doesn't work, genders are only "men"/"women" -- we can either add synonyms into the templates (Gender: Women, female, woman) or find a way to define synonymous terms in ListJS
  • Ditto on synonyms for lgbtqi/lgbt/etc. and/or standardize it

Automate deployment via Travis

Implement CI to deploy hugo built site from source to master to serve via gh-pages automatically upon changes to source repo.

Improve persona page layout

  • Explore use of CSS (especially sibling selections) to make the layout be two-column-y similar to the template
  • Make a print-media CSS option and/or explore hugo generation of PDF files? (reveal.js does this for presentations in that it makes a file that can be printed to pdf)

github community standards work

I added a formal README, CODE_OF_CONDUCT, and LICENSE files to the master branch, and built / linked to the relevant files on the website, to improve our adherence to github's community recommendations per https://github.com/usable-tools/usable-tools/community . This also meant adding back in a specific license page, so I cleaned up the somewhat confusing footer text that said it was both (c) Internews and (CC), and instead linked to the license page which specifies what is (CC) and that the remainder is (c) Internews.

Persona Filtering

Persona listing page currently has no filtering option. Design concept exists for this to leverage metadata (or other options, not hard requirement) to filter personas based on attributed.

Ticket from tracker: "Use listjs; use digital assets and design already established, but use one “block” for the search bar; add helper text around syntax we use for personas"

Update: "There wasn't a javascript plugin that matched this functionality. I thought listjs did this but it only filters by a search field, and doesn't support multiple select dropdowns. I'm so sorry I was incorrect about my projection for completing this feature. Completing this will require more research and maybe also working with someone who has stronger javascript skills than I do. Is this something we can push off to complete after launch or in a phase 2 of work on the site? "

Could we change to a free-form, live-updating text filter, and suggest specific terms to search against, suggest auto-fill/auto-complete from the tags, or do some other tricks using the listjs functionality?

Landing page descriptive text disappears in mobile layout

Text under the main heading is missing: "We are building feedback loops across the world, connecting digital security trainers working with at-risk communities, design experts, and open source tool developers. This human-centered design approach to the development of digital security software aims to solve real problems and build better, more usable tools for communities who need them most."

How can we add this back in? Should we add back in on mobile?

Documentation

Complete documentation with screencasts where illustrative; Add in deployment documentation with commands; quick screen capture of deployment with “simplescreencapture” for ubuntu

Landing page text options

idea: take text and move it to a separate box underneath arrow, move arrow up so user knows to navigate down

Odd header layout in mobile width

The orange arrow element breaks and creates a lot of useless space and a confusing interface (same color and sometimes overlaps the actual functional down arrow)

Screenshot from 2019-06-14 10-44-05

Banner images scale oddly

At "middle" widths, the banner images scale oddly, adding background-colored whitespace on top and bottom. See attached screenshot taking at a width of 994.
Screenshot from 2019-06-14 10-38-28

Carousel image+text scaling issues

At middle widths (e.g. 1024x768) the carousel images overlap text. At mobile widths, the images disappear altogether.

1024 width
Screenshot from 2019-06-14 10-43-08

mobile layout
Screenshot from 2019-06-14 10-42-50

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.