The communications platform that puts data protection first.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Rocket.Chat/client
Martin Schoeler e53b5784fe
Regression: fix broken members list (#19806)
5 years ago
..
components Regression: RoomInfo folder structure (#19787) 5 years ago
contexts [IMPROVE] Removed useEndpointDataExperimental hook usage (#19496) 5 years ago
hooks [IMPROVE] Replace useClipboard (#19764) 5 years ago
lib [FIX] Emails not showing up in Admin/Users (#19727) 5 years ago
methods New eslint rules (#14332) 7 years ago
notifications [NEW] Channel avatar (#18443) 5 years ago
omnichannel Frontend folder structure (#19631) 5 years ago
polyfills [FIX] Admin not working on IE11 (#19348) 5 years ago
providers [IMPROVE] Removed useEndpointDataExperimental hook usage (#19496) 5 years ago
sidebar [IMPROVE] Replace usePrefersReducedMotion (#19759) 5 years ago
startup [IMPROVE] New sidebar layout (#19089) 5 years ago
templateHelpers [IMPROVE] Remove global Blaze helpers (#15414) 6 years ago
types Non-idiomatic React code (#19303) 5 years ago
views Regression: fix broken members list (#19806) 5 years ago
README.md Frontend folder structure (#19631) 5 years ago
head.html Depack: Use mainModule for root files (#13508) 7 years ago
importPackages.js Remove legacy slider (#19255) 5 years ago
main.js Frontend folder structure (#19631) 5 years ago
reactAdapters.js Regression: Fix multiple react blazed template rendering at the same time (#19679) 5 years ago
routes.js Regression: "My Account" page doesn't load (#19753) 5 years ago

README.md

How does the folder structure work in the frontend?

The folder structure should follow rocketchat's html 'semantics' like:

    main   -> room
                -> header
                    ...
                -> contextualbar
                    roominfo
                        ...
            -> sidebar
                -> Header
                    -> search
                    -> actions
                        ...
                -> list
                    ...
                -> footer
                    ...

each folder is composed by: index.jsx ContainerComponent.jsx contexts (optional) providers (optional) components (optional) hooks (optional) libs (optional)

We strongly suggest that you start developing your components/hooks/libs inside the folder where they will be directly used. If you ever find that you will use them in more than one place, then you should "promote" the code to an upper level, where it can be commonly accessed by all others

we have being moving code from blaze to react, but sometimes we will need render under blaze enviroment, to do that use createTemplateForComponent